開發就一定需要偵錯程式碼,而PHP偵錯程式碼不能像iOS那種編譯器語言可以透過Xcode這樣的開發軟體來單步調試,因此開發PHP的人員通常會透過輸出函數列印相關提示資訊來調試代碼。
PHP中常用的列印輸出的函數一步步講解
#echo
echo函數可以同時輸出多個字串,帶多個參數,但不要求使用圓括號,也沒有傳回值。但是,如果帶上圓括號也沒有問題的,因此函數本來就需要圓括號的:
echo '技术博客<br>'; echo ('echo也可以带括号<br>');
#相信echo函數是使用最多的列印函數了吧!
print
print函數同時只能輸出一個字串,只能帶一個參數,需要帶圓括號而且會有回傳值。當其執行失敗時返flase。
print('www.php.cn<br>');
print函數使用也是相當多的,用來列印訊息,不過沒有echo那麼方便,但它有它的用處!
printf
printf函數有兩個參數,第一個參數是指定輸出格式,第二個參數是要輸出的變數。輸出格式為:
%s: 依字串;
%d: 按整數;
%b: 按二進位;
%x: 按16進位;
%o: 按八進位;
$f: 按浮點型
/* $var = 10; printf('整型:%d<br>', $var); printf('浮点型:%.2f<br>', $var); // 保留两位小数 printf('字符串:%s<br>', $var); printf('二进制:%b<br>', $var); printf('八进制:%o<br>', $var); printf('十六进制:%x<br>', $var); // 打印结果 /* 整型:10 浮点型:10.00 字符串:10 二进制:1010 八进制:12 十六进制:a */
sprintf
$ret = sprintf('%.2f', $var); echo "结果:{$ret}<br>";
變數輸出是非常有用的,使用也很多!
print_r
mixed print_r ( mixed $expression [, bool $ return = false ] )
$arr = array('name' => '技术博客', 'site' => 'www.php.cn'); print_r($arr); echo '<br>'; // 参数二设置为true则不会打印,而是直接返回 $arr1 = print_r($arr, true); echo "{$arr1}<br>";
var_dump
// 当打印的是字符串,其中有对象时,打印出来是: // string(20) "var_dump:Array var_dump('var_dump:' . $arr . '<br>'); // 当只有对象本身时,打印出来如下: // " array(2) { ["name"]=> string(21) "技术博客" ["site"]=> string(19) "www.php.cn" } var_dump($arr);
die
if (!isset($type)) { die('I am die!<br>'); }
總結:
以上函數都可以列印物件的值、系統函數值以及陣列的內容; echo 、print、printf可以列印變數內容,但無法顯示陣列及系統超級變數陣列;
print_r 和var_dump不僅可以列印陣列、標量變量,還可以列印物件的內容;
var_dump語句不僅能列印變數、陣列內容,還可以顯示布林變數和資源(
resource)的內容; var_export 函數傳回傳遞給該函數的變數的結構訊息,和var_dump()函數類似,不同的是其傳回的內容是合法的
php程式碼。
以上是php中的各種列印輸出函數匯總的詳細內容。更多資訊請關注PHP中文網其他相關文章!