我有一个写内容的小函数
function write($data)
{
file_put_contents("filename.txt",$data,FILE_APPEND);
}
它工作得很好,除了一些地方,当我做以下
write( var_dump($someObject) );
这会给出的错误信息
非法字符。
我通过浏览器中的一个警告框看到了这个错误消息php通过ajax调用得到了调用。如有任何调试方面的帮助,我们将不胜感激。
var_dump
不会像那样工作,因为它直接输出而不是返回输出。如果您想捕获输出以便将其写入其他地方,则必须使用输出缓冲:
ob_start();
var_dump($data);
write(ob_get_clean());
或者,var_export
也是可以工作的,只要你记得为第二个参数传递true
:
write(var_export($data, true));
函数var_dump()
(请参阅文档)确实会回显所有内容。您应该在此处使用var_export()
(请参阅文档)。
write(var_export($data, true));