常在寫php的人一定會想知道echo和print這兩個函數有什麼不一樣,我也很想知道。
驗證
1. 比較print 和echo 函式的執行速度差異。
2. print 和echo 兩個函數的用法差異。
速度的差異
測試用程式
$s = microtime(1); for ($i = 0; $i < 1000000; $i++){ echo ""; } $e = microtime(1); echo "Use 'echo': ".($e - $s)."\n"; $s = microtime(1); for ($i = 0; $i < 1000000; $i++){ print ""; } $e = microtime(1); echo "Use 'print': ".($e - $s)."\n";
結果
Use 'echo': 0.065550088882446
Use 'print': 0.080870151519775
用法的差異
正確用法
print "123"; O
print("123"); O
echo "123"; O
echo ("123"); O
echo "123","456",7,"ABC"; O
錯誤用法
echo ("123","456",7,"ABC"); X
print("123","456",7,"ABC"); X
print "123","456",7,"ABC"; X
結論
1. echo 比 print快一點
2. echo 不回傳資料,print永遠回傳1
3. echo,print 都不是一個函數,而是一個結構construct,所以後面的參數不加小括號 '()'
4. echo 可傳入多個參數,print不行
參考資料
[1] https://stackoverflow.com/questions/234241/how-are-echo-and-print-different-in-php
修改 2010-06-03 23:56:49