在PHP中出现而不是撇号

时间:2013-02-02 19:00:15

标签: php encoding

  

可能重复:
  Getting ’ instead of an apostrophe(') in PHP

我是PHP编程语言的新手,我需要一些帮助。当用PHP写入文件时,当撇号写入文件时,它实际上是写入的。例如,当我尝试写:

  

你好,真棒

该程序改为写道:

  

你好,很棒

我尝试了多种解决方案,但仍无法使其正常运行。如果有人可以提供帮助,我将非常感激。

编辑: 好的,这就是我的尝试:

echo mb_convert_encoding(     的file_get_contents($文件名),     “HTML实体”     “UTF-8”   );

结果是:\“Hello \”而不是“Hello”

我也尝试过:

$ text = fgets($ fp); $ html = mb_convert_encoding($ text,“HTML-ENTITIES”,“UTF-8”);

但并不真正了解如何处理该代码

此外,我想从字符转换变量$ stringDatad或从字符转换整个文件。文件名保存在$ filename

2 个答案:

答案 0 :(得分:5)

尝试

echo stripslashes(mb_convert_encoding( file_get_contents($filename), "HTML-ENTITIES", "UTF-8" ));

答案 1 :(得分:0)

我认为mb_convert_encoding将$ to / $ from_encoding作为参数: mb_convert_encoding($str, 'UTF-8', 'ISO-8859-1');

HTML-ENTITIES是字符串后第一个参数的有效值吗?