文章介紹了三個輸出函數echo和print和print_r區別,下面我們來一下介紹一下用法速度問題。
1.echo和print的區別
PHP中echo和print的功能基本相同(輸出),但是兩者之間還是有細微差別的。echo輸出後沒有返回值,但print有返回值,當其執行失敗時返回flase。因此可以作為一個普通函數來使用,例如執行下面的代碼後變量$r的值將為1。
$r = print "Hello World";
這意味著print可用在一些復雜的表達式中,而echo則不行。但是,因為echo語句不要求返回任何數值,所已在代碼中echo語句的運行效率要略微快於print語句。
echo 沒有返回值;print 有返回值,print 的返回值總是1。
表達式
print 可以用於復雜的表達式,而 echo 不可以。比如 print 可以用於如下示例:
參數
echo 可以有多個參數,而 print 只能有一個參數。
echo 如果有多個參數,應用逗號分隔,每個參數沒有必要加小括號,正確寫法如下:
代碼如下 復制代碼 echo "good ","for ","you";注意,如果 echo 有多個參數,只用一個小括號將所有參數圍起來,是錯誤的寫法。下面的寫法是錯誤的:
代碼如下 復制代碼 echo ("good ","for ","you");print 只能有一個參數,比如:
代碼如下 復制代碼print ("good for you");
print "good for you";
echo 和 print 的作用都是輸出字符串。echo 和 print 之間主要的區別在於,echo 的速度比 print 快,因為 echo 沒有返回值。
print_r()函數 ,只用於輸出數組。
php 中 print_r 函數輸出的數組內容不排列。為了讓它輸出的好看些。如,數組有多層。分段列出,我們可以這樣寫:
Example #1 print_r() example
代碼如下 復制代碼<pre>
<?php
$a = array ('a' => 'apple', 'b' => 'banana', 'c' => array ('x', 'y', 'z'));
print_r ($a);
?>
</pre>
The above example will output:
<pre>
Array
(
[a] => apple
[b] => banana
[c] => Array
(
[0] => x
[1] => y
[2] => z
)
)
</pre>