【发布时间】:2015-01-11 18:17:12
【问题描述】:
我的文本文件包含以下字符串:“ãéðä”。 我的 PHP 批处理转换该字符串是这样的:
<?php
$text = iconv("UTF-8","ISO-8859-1", "ãéðä");
echo $text;
?>
当我运行代码时,我得到了我想要的转换后的文本。 如果我有多个这样的字符串,我使用以下代码:
<?php
$myFile = 'test.txt';
$myHandle = fopen($myFile,'r');
$myText = fread($myHandle, filesize($myFile));
$ridComma = explode(',',$myText);
foreach($ridComma as $item)
{
$text = iconv("UTF-8","ISO-8859-1", $item);
}
fclose($myHandle);
?>
这次我收到以下错误:
Notice: iconv(): Detected an illegal character in input string in C:\xampp\htdocs\test\test.php on line 8
使用相同的转换功能,我在一批中得到转换,在另一批中得到错误! 谁能解释我为什么? 谢谢!
【问题讨论】:
-
您确定文件
test.txt是使用ISO-8859-1 编码保存的吗? -
代码没有错误。您在文件中输入不正确。使用 Artjoman 的答案