在用PHP記錄日志,或者是 Ajax 請求出錯想要 debug 的時候。我們一般都會將信息寫入到一個指定的文件
當中。然後根據相應的信息來處理問題。
比如筆者最喜歡在用 Ajax 取不到數據的時候,在PHP腳本裡面加上下面一段代碼
復制代碼 代碼如下:
$fp = fopen('./a.txt', 'a+b');
fwrite($fp, $content);
fclose($fp);
但是,這裡有一個問題。那就是 $content 是一個數組怎麼辦?
你可能會說,我循環輸出。那要是多維數組呢?
我只是為了 debug 用得著搞得那麼累嗎。
這裡你可以使用 var_export() .
此函數返回關於傳遞給該函數的變量的結構信息,它和 var_dump() 類似,不同的是
其返回的表示是合法的 PHP 代碼。
可以通過將函數的第二個參數設置為 TRUE,從而返回變量的表示。
復制代碼 代碼如下:
$fp = fopen('./a.txt', 'a+b');
fwrite($fp, var_export($content, true));
fclose($fp);
注意 var_export() 的第二個參數需要設置為 true 才表示取得返回值。要不然是直接輸出
另外,如果你的 $content 只是一個數組,而不包含其他的內容的話
你也可以用 print_r()
同樣的,print_r() 的第二個參數也要設置為 true
復制代碼 代碼如下:
$fp = fopen('./a.txt', 'a+b');
fwrite($fp, print_r($content, true));
fclose($fp);