重音字符崩溃独立的PHP解释器

时间:2012-08-30 22:40:39

标签: php windows encoding non-ascii-characters

我有一个通过命令行&运行的PHP脚本独立的PHP解释器。 该脚本将大量html输出到CSV文件中,稍后将其批量上传到WP站点。

口音字符似乎会使解释器崩溃。例如:

$output = "Não encontrou o que você está procurando?";  
$english = "Did not find what you're looking for?";

每当我尝试操作$output字符串时,CSV文件都不会输出任何内容,但如果我使用$ english翻译,那么一切都运行正常。

我确信它与不使用UTF-8编码的解释器有关,但我无法弄清楚如何修复它。

我试过了:

  1. 将PHP.INI文件与:default_charset = utf-8
  2. 分开
  3. 第一行脚本:ini_set('default_charset', 'UTF-8');
  4. 确保我的代码编辑器(ConText)以unicode格式保存。
  5. 谷歌过去一小时我想到的一切
  6. 我知道我可以将字符串分解为它的html实体(ã=& atilde;),但我真的不愿意这样做,因为会有很多这些字符串,其中一些会是经常变化。

    有没有其他解决方案让PHP解释器解析重音字符而不会爆炸?

1 个答案:

答案 0 :(得分:2)

我没有在任何地方使用utf8_encode()。一旦我补充说,一切都很好。

$output = "Não encontrou o que você está procurando?";  
$output = utf8_encode($output); // THIS FIXED IT  
$english = "Did not find what you're looking for?";