1. 程式人生 > >echo(),print(),print_r()之間的區別?

echo(),print(),print_r()之間的區別?

echo是PHP語句, print和print_r是函式,語句沒有返回值,函式可以有返回值(即便沒有用)  
print只能打印出簡單型別變數的值(如int,string)  
print_r可以打印出複雜型別變數的值(如陣列,物件)  

echo -- 輸出一個或者多個字串  
Description  
void echo ( string arg1 [, string ...] ) //返回值為空  
echo "你好"," 朋友";  


print --輸出一個字串  
Description  
int print ( string arg )//返回值為整形  
print "你好朋友";  

可以進行下面操作  

$name=print "nihao \n";  
$str = 'test print value is $name .';  
eval("$print=\"$str\";");  
echo $print;  

print_r -- 列印關於變數的易於理解的資訊。  
bool print_r ( mixed expression [, bool return] ) //返回值是布林型的,引數是mix型別的,可以是字串,整形,陣列,物件類print_r() 顯示關於一個變數的易於理解的資訊。如果給出的是 string、integer 或 float,將列印變數值本身。如果給出的是 array,將會按照一定格式顯示鍵和元素。object 與陣列類似。  

print_r() 將把陣列的指標移到最後邊。  
你可以  
print_r(str);  
print_r(int);  
print_r(array);  
print_r(obj);  
也可以用var_dump var_export