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  ";  
$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 

原文地址:https://www.cnblogs.com/cp168168/p/7326050.html