2017-04-02 3 views
0

PHPでXMLファイルを作成し、それをcurlで送信するにはどうすればよいですか?PHP:XMLファイルを作成し、それをcurlで送信しますか?

私はここまで来ている:

<?php 
ob_start(); 

header("Content-type: text/xml"); 
header('Content-Disposition: attachment; filename="feed.xml"'); 
?> 

<products> 
<?php 
foreach ($products as $product) 
{ 
?> 
<product></product> 
<?php  
} 
?> 
</products> 

<?php 
ob_flush(); 

$curlOpts = array(
    CURLOPT_URL => 'https://website.com/api/importfile', 
    CURLOPT_GET => TRUE, 
    CURLOPT_RETURNTRANSFER => TRUE, 
    CURLOPT_HTTPHEADER => array('Authorization: api 1234-56789', 'Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet', 'Content-Disposition: form-data; name="feed"; filename="feed.xml"') 
); 

$ch = curl_init(); 
curl_setopt_array($ch, $curlOpts); 
$response = curl_exec($ch); 
curl_close($ch); 
?> 

をしかし、継続するのか分かりません。どのようにしてそれを「ファイル」にしてそれをカールコールに接続させるのですか?まずファイルとしてローカルに保存する必要がありますか?それとも、カールコールに保存するだけですか?

+0

あなたは 'それをupload'またはポストパラメータとして送信意味ですか? – hassan

+0

APIドキュメントでは、「excelまたはxmlファイルをアップロードするために、インポートするAPIを使用してimportfile APIへのPOST呼び出しを実行します」というメッセージが表示され、「この要求は、httpステータスコードを返します。そして、 'ImportIdは、PUT importfile APIを呼び出すときに使用されます。 ' –

答えて

0

あなただけで、これが役立つかもしれない...カール使用してファイルを送信する必要がありそうです:

http://code.stephenmorley.org/php/sending-files-using-curl/

+0

これで、ファイルをローカルに保存する必要がありますか? –

+0

はい....ファイルを作成する必要があるかもしれません –