Php 作为UTF-8发送的卷曲应为ISO-8859-1

Php 作为UTF-8发送的卷曲应为ISO-8859-1,php,curl,encoding,utf-8,character-encoding,Php,Curl,Encoding,Utf 8,Character Encoding,正在使用此文件发送文件: $xml_file = 'myfile.xml'; $research_xml_url = "http://mydomain.com/receive.php"; $curl_resource = curl_init($research_xml_url); curl_setopt($curl_resource, CURLOPT_HTTPHEADER, array('Content-Type: text/xml')); curl_setopt($curl_resource

正在使用此文件发送文件:

$xml_file = 'myfile.xml';
$research_xml_url = "http://mydomain.com/receive.php";
$curl_resource = curl_init($research_xml_url);

curl_setopt($curl_resource, CURLOPT_HTTPHEADER, array('Content-Type: text/xml'));
curl_setopt($curl_resource, CURLOPT_ENCODING, 'ISO-8859-1'); // Doesn't seem to work
curl_setopt($curl_resource, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl_resource, CURLOPT_POST, 1);
curl_setopt($curl_resource, CURLOPT_TIMEOUT, 360);
curl_setopt($curl_resource, CURLOPT_HEADER, 0);
curl_setopt($curl_resource, CURLOPT_USERAGENT, "Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)");
curl_setopt($curl_resource, CURLOPT_URL, $research_xml_url);

$cwd = getcwd();
chdir($cwd);

$file_to_send = array('xml' => "@" . $cwd .'/'.  $xml_file);
curl_setopt($curl_resource, CURLOPT_POSTFIELDS, $file_to_send);
$incoming_xml = curl_exec($curl_resource);

if (curl_error($curl_resource)) {
    echo curl_error($curl_resource)  ;
} else {
    print_r($incoming_xml, TRUE);
}

$curl_arr = curl_getinfo($curl_resource);
print_r($curl_arr, TRUE);
curl_close($curl_resource);
它打印出来,声明UTF-8,但它结尾的XML编码为ISO-8859-1():

这是接收脚本:

$postText = file_get_contents('php://input');
$outp = fopen("files/xmlfile" . date("YmdHis") . ".xml", "w");
fwrite($outp, $postText);
fclose($outp);
如何强制curl以ISO-8859-1的形式发送

curl_setopt($curl_resource, CURLOPT_ENCODING, 'ISO-8859-1');

似乎不起作用

CURLOPT_编码用于设置
接受编码:
标题,其值为“identity”、“deflate”和“gzip”

如果希望以特定编码发送XML数据,则需要将
$research\u XML\u url
从当前编码转换为所需编码。例如,使用
iconv()
函数

curl_setopt($curl_resource, CURLOPT_ENCODING, 'ISO-8859-1');