我正在使用php写一个.txt文件。当我用一些特殊的字符创建它时,它会显示Ascii代码。就像我写一个字符串“我不知道”它表示“我不知道”。如何将其编写为人类可更新格式?
代码在
之下function WriteErrorLog($IntegrationId, $errorStr){
// get integration name--------
$integrationnameQuery = "select * from integration where IntegrationId = $IntegrationId";
$queryRes = mysql_query($integrationnameQuery);
$resRows = mysql_fetch_array($queryRes);
$integrationName = $resRows['Name'];
if(!file_exists('errors/'.$IntegrationId.'/'.date("Y.m.d").'_ErrorFile.txt')){
$errorFile = 'errors/'.$IntegrationId.'/'.date("Y.m.d").'_ErrorFile.txt';
$fh = fopen($errorFile, 'w') or die("can't open file");
fwrite($fh, 'Integration Name: '.$integrationName."\r\n\r\n".date('Y-m-d H:i:s').': '.$errorStr."\r\n\r\n");
fclose($fh);
}else{
$errorFile = 'errors/'.$IntegrationId.'/'.date("Y.m.d").'_ErrorFile.txt';
$fh = fopen($errorFile, 'a+') or die("can't open file");
fwrite($fh, date('Y-m-d H:i:s').': '.$errorStr."\r\n\r\n");
fclose($fh);
}
}
function CreateErrorLog($IntegrationId, $errorStr){
if (!is_dir('./errors/'.$IntegrationId)) {
mkdir('./errors/'.$IntegrationId);
WriteErrorLog($IntegrationId, $errorStr);
}else{
WriteErrorLog($IntegrationId, $errorStr);
}
}
我正在访问如下
CreateErrorLog('120', 'I don`t know');
答案 0 :(得分:1)
您可以通过特殊代码编写特殊字符:例如\ n是0x0A
或者您可以使用函数chr()将ASCII码转换为字符。
或者你可以在(f | s)printf函数中使用%c。 printf("There is zero:%c", 0x30);
答案 1 :(得分:0)
如果您的代码中有htmlspecialchars
或htmlentities
,请将其删除。