php 內置調試函數:var_dump() 顯示變量詳細信息,類型、值、結構。print_r() 以更佳可讀格式打印信息,適用于調試復雜數據結構。error_log() 記錄消息到錯誤日志,方便記錄調試信息、錯誤或警告。
如何使用 PHP 內置函數對代碼進行調試
PHP 提供了幾個內置函數,可以幫助你調試代碼。這些函數使用起來很簡單,但可以節省大量的時間和精力。
var_dump()
var_dump() 函數顯示變量的信息,包括其類型、值和結構。這對于檢查變量是否包含預期的值或類型非常有用。
$array = ['foo' => 'bar', 'baz' => 'qux']; var_dump($array);
登錄后復制
輸出:
array(2) {
["foo"]=>
string(3) "bar"
["baz"]=>
string(3) "qux"
}
登錄后復制
print_r()
print_r() 函數類似于 var_dump(),但它以更可讀的格式打印信息。這對于調試復雜數據結構很有用。
$object = new stdClass(); $object->name = 'John Doe'; $object->age = 30; print_r($object);
登錄后復制
輸出:
stdClass Object
(
[name] => John Doe
[age] => 30
)
登錄后復制
error_log()
error_log() 函數將消息記錄到錯誤日志。這對于記錄調試信息、錯誤或警告很有用。
error_log('調試信息:變量 $name 為空。');
登錄后復制
實戰案例
假設你有一個函數,用于計算字符串中的單詞數量。然而,這個函數返回錯誤的結果。你可以使用這些 PHP 內置函數來調試代碼:
function word_count($string) {
// 分割字符串成單詞
$words = explode(' ', $string);
// 返回單詞數量
return count($words);
}
// 測試函數
$string = 'This is a test string.';
$result = word_count($string);
// 檢查結果
if ($result != 5) {
error_log('函數 word_count() 返回錯誤的結果。');
}
登錄后復制
通過使用 error_log() 函數記錄調試信息,你可以輕松查明函數返回錯誤結果的原因。






