1.echo和print的區(qū)別
PHP中echo和print的功能基本相同(輸出),但是兩者之間還是有細(xì)微差別的。echo輸出后沒有返回值,但print有返回值,當(dāng)其執(zhí)行失敗時返回flase。因此可以作為一個普通函數(shù)來使用,例如執(zhí)行下面的代碼后變量$r的值將為1。
$r = print "Hello World";
這意味著print可用在一些復(fù)雜的表達(dá)式中,而echo則不行。但是,因為echo語句不要求返回任何數(shù)值,所已在代碼中echo語句的運行效率要略微快于print語句。
echo 沒有返回值;print 有返回值,print 的返回值總是1。
2.表達(dá)式
print可以用于復(fù)雜的表達(dá)式,而 echo 不可以,比如 print 可以用于如下示例:
- <html><body><?php$a=true;$a ? print "true":print "false";?></body></html>
3.參數(shù)
echo 可以有多個參數(shù),而 print 只能有一個參數(shù)。
echo 如果有多個參數(shù),應(yīng)用逗號分隔,每個參數(shù)沒有必要加小括號,正確寫法如下:
- echo "good ","for ","you";
注意,如果 echo 有多個參數(shù),只用一個小括號將所有參數(shù)圍起來,是錯誤的寫法。下面的寫法是錯誤的:
- echo ("good ","for ","you");
print 只能有一個參數(shù),比如:
- print ("good for you");
- print "good for you";
echo 和 print 的作用都是輸出字符串。echo 和 print 之間主要的區(qū)別在于,echo 的速度比 print 快,因為 echo 沒有返回值。
4.print_r()函數(shù),只用于輸出數(shù)組。
php 中 print_r 函數(shù)輸出的數(shù)組內(nèi)容不排列。為了讓它輸出的好看些。如,數(shù)組有多層。分段列出,我們可以這樣寫:
- <?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
- )
- )
新聞熱點
疑難解答