如何更改Simple HTML DOM检索的网页的编码?

时间:2014-11-07 18:06:05

标签: php encoding simple-html-dom

我正在尝试阅读网页的内容

$html = file_get_html('http://www.example.com/somepage.aspx');

由于页面的编码是Windows-1254,而且我在编码为UTF-8的页面上工作,我无法替换一些具有特定语言字符的单词。

例如:

如果我尝试

$str2 = str_replace('TÜRKÇE', 'TURKCE', $str);

它不会取代。

我已经尝试了htmlentities()功能,它有效,但删除了一些包含特殊字符的单词。

2 个答案:

答案 0 :(得分:0)

仅在utf-8中工作。如果您在其他编码中有一些数据,请转换它。如果您不知道编码,请尝试定义它。如果你不能,请使用用户。然后只对所有字符串操作使用mb_ *函数,这很重要!一些函数在本机php中不存在,但是在评论中在php.net /上搜索它的手工实现。

答案 1 :(得分:0)

获取字符串后,我使用了iconv('Windows-1254', 'utf-8', $str)函数(感谢@pguardiario)。这解决了我的问题。