2012-09-27 83 views
-1
$xmlSend = <<<TEXT 
        <?xml version="1.0" encoding="UTF-8"?> 
         <VMCAMEXM> 
          <business> 
           <id_company>{$idCompany}</id_company> 
           <id_branch>{$idBranch}</id_branch> 
           <country>{$Country}</country> 
           <user>{$User}</user> 
           <pwd>{$pwd}</pwd> 
          </business> 
          <transacction> 
           <merchant>{$Merchant}</merchant> 
           <reference>50000</reference> 
           <tp_operation>13</tp_operation> 
           <creditcard> 
            <crypto>{$Crypto}</crypto> 
            <type>V/MC</type> 
            <name>{$name}</name> 
            <number>{$number}</number> 
            <expmonth>{$expmonth}</expmonth> 
            <expyear>{$expyear}</expyear> 
            <cvv-csc>{$cvv}</cvv-csc> 
           </creditcard> 
           <amount>{$cantidad}</amount> 
           <currency>{$Currency}</currency> 
           <usrtransacction>1</usrtransacction> 
          </transacction> 
         </VMCAMEXM> 
TEXT; 

echo "<pre>"; 
print_r(htmlspecialchars($xmlSend)); 
echo "</pre>"; 

      //$url = $tUrl;   
      $vars = "&xml=" . $rc4->limpiaVariable(urlencode($xmlSend)); 
      $header[] = "Content-type: application/x-www-form-urlencoded"; 
      $ch = curl_init(); 
      $postfields = "info_asj3=1".$vars; 

      curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0); 
      curl_setopt($ch, CURLOPT_URL,$Url); 
      curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); 
      curl_setopt($ch, CURLOPT_TIMEOUT, 250); 
      curl_setopt($ch, CURLOPT_POST, true); 
      curl_setopt($ch, CURLOPT_POSTFIELDS, $postfields); 
      curl_setopt($ch, CURLOPT_HTTPHEADER, $header);   

      $data = curl_exec($ch); 
       if (curl_errno($ch)) { 
        $data = curl_error($ch);   
       } else { 
        curl_close($ch); 
       } 

我正在與一家新公司合作,這家公司正在使用它來連接到一個xml提要。但使用這個開始<<<TEXT正在搞亂它下面的所有代碼。我沒有得到任何錯誤,代碼的作品,但我所有的PHP代碼是黑色的,說實話,不易管理。如果我將它取出,xml Feed無法正常運行。有人可以告訴我爲什麼這是行之有效的,什麼是更好的方法來實現這一目標?我到處搜索,無法找到有關該主題的內容。請幫忙!<<< TEXT正在使用PHP變量來輸出XML?

非常感謝您抽出寶貴時間來回答!

+0

參見[參考 - ?這是什麼符號意味着PHP(http://stackoverflow.com/questions/3737139/reference-what-does-this-symbol-mean-in-php ) – mario

回答

2

這是字符串的Heredoc語法。

對字符串使用Heredoc有利於多行字符串並避免引用問題。