我正在使用Apache + mod_php,我注意到当我在PHP中使用trigger_error,并在消息的字符串中放入一些非us-western chacarter时,它会被错误地写入apache error_log。
例如,这一行:
<?php trigger_error("Greška", E_USER_WARNING); ?>
在error_log中转储以下行:
PHP Warning: Gre\xc5\xa1ka in /var/www/jsosic.php on line 1
这是可以纠正的,还是我应该在trigger_error调用中停止使用非us-western字符?
(对于任何有兴趣的人,“Greska”代表我的母语错误 - 克罗地亚语。)
答案 0 :(得分:1)
看起来日志文件的编码不是utf8。我不知道如何解决这个问题。
您可以使用set_error_handler
定义自己的错误处理程序,以便在utf8中记录错误。