我有一个PHP脚本,通过Salesforce API从Salesforce获取数据,并使用file_put_contents将输出写入文件。数据是韩文字符和英文字符的混合。
当我在运行Red Hat Enterprise Linux ES release 4 (Nahant Update 8)上安装PHP 5.2.8的计算机(1)或安装PHP 5.3.6的类似计算机(2)上运行该脚本时,韩文字母之间的空格会消失。
例如:(使用K表示韩文字母,E表示英文字母)
EEEEEEEEK KKK KKKK EEE KKKK显示为EEEEEEEKKKKKKKKEEE KKKK
但是,当我在运行CentOs上安装PHP 5.3.5的计算机(3)或在我的本地Windows计算机上运行PHP 5.3.6的计算机(4)上运行脚本时,文件中的文本是正确的。
有人能提出问题可能是什么吗?
编辑-最初我通过浏览器访问php脚本,但为了(希望)简化问题,我目前正在将输出存储在文本文件中并下载到我的Windows计算机。
编辑-Hex版本
原始文本-CFD란 무엇입니까?
来自(1)的十六进制-43 46 44 eb 9e 80 eb ac b4 ec 97 87 ec 9e 85 eb 8b 88 ea b9 8c 3f
来自(3)的十六进制-43 46 44 eb 9e 80 20 eb ac b4 ec 97 87 ec 9e 85 eb 8b 88 ea b9 8c 3f
编辑-用于选择文本的代码(省略了用户、密码、表、ID和路径)
当我在运行Red Hat Enterprise Linux ES release 4 (Nahant Update 8)上安装PHP 5.2.8的计算机(1)或安装PHP 5.3.6的类似计算机(2)上运行该脚本时,韩文字母之间的空格会消失。
例如:(使用K表示韩文字母,E表示英文字母)
EEEEEEEEK KKK KKKK EEE KKKK显示为EEEEEEEKKKKKKKKEEE KKKK
但是,当我在运行CentOs上安装PHP 5.3.5的计算机(3)或在我的本地Windows计算机上运行PHP 5.3.6的计算机(4)上运行脚本时,文件中的文本是正确的。
有人能提出问题可能是什么吗?
编辑-最初我通过浏览器访问php脚本,但为了(希望)简化问题,我目前正在将输出存储在文本文件中并下载到我的Windows计算机。
编辑-Hex版本
原始文本-CFD란 무엇입니까?
来自(1)的十六进制-43 46 44 eb 9e 80 eb ac b4 ec 97 87 ec 9e 85 eb 8b 88 ea b9 8c 3f
来自(3)的十六进制-43 46 44 eb 9e 80 20 eb ac b4 ec 97 87 ec 9e 85 eb 8b 88 ea b9 8c 3f
编辑-用于选择文本的代码(省略了用户、密码、表、ID和路径)
<?php
ini_set("soap.wsdl_cache_enabled", "0");
require_once ("../soapclient/SforcePartnerClient.php");
require_once ("../soapclient/SforceHeaderOptions.php");
$partner_wsdl = "../soapclient/new-partner.wsdl.xml";
$client = new SforcePartnerClient();
$client->createConnection($partner_wsdl);
$loginResult = $client->login('--user--', '--pass--');
$query = "Select Name FROM --table-- WHERE Id = '--id--'";
$response = $client->query($query);
echo'<pre>';print_r($response);echo'</pre>';
$queryResult = new QueryResult($response);
foreach ($queryResult->records as $qr) {
$content = $qr->fields->Name;
file_put_contents('--path--',$content);
}
?>