PHP cURL在下载的xml文件中添加随机字符

时间:2014-04-18 14:44:46

标签: php xml curl random character-encoding

我正在尝试使用PHP访问SOAP API,为此我需要使用PHP cURL在我的计算机上下载WSDL描述文件的副本。

这是我正在使用的代码:

<?php

$ch = curl_init();
$credit = ('some_username'.':'.'some_password');
curl_setopt($ch, CURLOPT_URL, 'https://somevalidaddress/file.asmx?WSDL');
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($ch, CURLOPT_USERPWD, $credit);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$data = curl_exec($ch);


curl_close($ch);


$path = 'C:\Wamp\www\mmx\test2.xml';

file_put_contents($path, $data);

?>

文件test2.xml在第345行包含 每次 (总共684行)一个随机字符(例如ø,@或VT,等等。)。此外,该文件的 最后一个字符 剥离

我用谷歌搜索了这个东西,我读到了关于逐个错误和缓冲区溢出的问题但是,我仍然无法解决我的问题。

有什么想法吗?谢谢!

1 个答案:

答案 0 :(得分:0)

如何使用它:

$context = stream_context_create(array(
    'http' => array(
        'header'  => "Authorization: Basic " . base64_encode("$username:$password")
    )
));
$data = file_get_contents('https://somevalidaddress/file.asmx?WSDL', false, $context);