php,iconv()函数错误消息

php,iconv()函数错误消息,php,iconv,Php,Iconv,我的文本文件包含以下字符串:“ãðä”。 转换该字符串的PHP批处理如下所示: <?php $text = iconv("UTF-8","ISO-8859-1", "ãéðä"); echo $text; ?> 使用相同的转换函数,我在一批中得到转换,在另一批中得到错误! 谁能解释一下原因吗? 谢谢 您可以使用 $text = iconv('ISO-8859-1', 'UTF-8//IGNORE', $item); 它将忽略非法字符并将其删除。您确定文件test.txt是用ISO

我的文本文件包含以下字符串:“ãðä”。 转换该字符串的PHP批处理如下所示:

<?php
$text = iconv("UTF-8","ISO-8859-1", "ãéðä");
echo $text;
?>
使用相同的转换函数,我在一批中得到转换,在另一批中得到错误! 谁能解释一下原因吗? 谢谢

您可以使用

$text = iconv('ISO-8859-1', 'UTF-8//IGNORE', $item);

它将忽略非法字符并将其删除。

您确定文件
test.txt
是用ISO-8859-1编码保存的吗?代码中没有错误。文件中的输入不正确。使用ArtjomanThanks的答案,这次的输出是:“ÿþþðä@Dai,我先保存为“ansi”,然后保存为“UTF-8”,再保存为“unicode”,然后保存为“unicode大端”。我没有收到错误,但输出仍然是gibrish。还有一个选项-使用函数
mb_convert_encoding
$utf_8=mb_convert_encoding($text,“utf-8”,“windows-1251”)
如果您安装了
mb_string
extension-installedThanks,我终于找到了解决问题的方法。通过记事本++保存文本文件,使用:在不带BOM的UTF-8中编码。
Notice: iconv(): Detected an illegal character in input string in C:\xampp\htdocs\test\test.php on line 8
$text = iconv('ISO-8859-1', 'UTF-8//IGNORE', $item);