本篇文章一直來學習PHP中所有用于輸出信息的函數,分類比較來學習其相同點與不同點,掌握日常開發中必備的技巧。
開發就一定需要調試代碼,而PHP調試代碼不能像iOS那種編譯器語言可以通過Xcode這樣的開發軟件來單步調試,因此開發PHP的人員通常會通過輸出函數打印相關提示信息來調試代碼。
PHP中常用的打印輸出的函數一步步講解
echo
echo函數可以同時輸出多個字符串,帶多個參數,但并不要求使用圓括號,也沒有返回值。但是,如果帶上圓括號也沒有問題的,因此函數本就需要圓括號的:
echo '標哥的技術博客<br>';echo ('echo也可以帶括號<br>'); 相信echo函數是使用最多的打印函數了吧!
print函數同時只能輸出一個字符串,只能帶一個參數,需要帶圓括號而且會有返回值。當其執行失敗時返flase。
print('www.huangyibiao.com<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
sprintf不能直接輸出變量值,而是直接將值讀取給指定的變量:
$ret = sprintf('%.2f', $var);echo "結果:{$ret}<br>"; 這個函數用于格式化變量輸出是非常有用的,使用也很多!
print_r
print_r這個函數用于輸出數組,帶一個或者兩個。如果參數二設置為YES,則不會輸出表達式信息,而是直接return回來:
mixed print_r ( mixed $expression [, bool $return = false ] )
$arr = array('name' => '標哥的技術博客', 'site' => 'www.huangyibiao.com');print_r($arr);echo '<br>'; // 參數二設置為true則不會打印,而是直接返回$arr1 = print_r($arr, true);echo "{$arr1}<br>"; var_dump
var_dump這個函數在調試過程中使用最多了吧,用于輸出變量的內容、類型、字符串的內容,常用于開發中調試使用:
// 當打印的是字符串,其中有對象時,打印出來是:// string(20) "var_dump:Arrayvar_dump('var_dump:' . $arr . '<br>'); // 當只有對象本身時,打印出來如下:// " array(2) { ["name"]=> string(21) "標哥的技術博客" ["site"]=> string(19) "www.huangyibiao.com" }var_dump($arr); die
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中所有的打印輸出函數,希望小伙伴們能夠喜歡
新聞熱點
疑難解答
圖片精選