echo、print、print_r作用及区别 原创
- echo
echo() 函数输出一个或多个字符串。
‘’’ echo ‘’’ 实际不是一个函数,使用的时候可以不用带括号
无返回值
<?php
$a = 1;
$b = 'abc';
$c = '2a';
echo $a; # 输出 1
echo $b,$c; # 输出 abc2a
echo $a, $b, $c; # 输出 1abc2a
echo($a); # 输出 1,带括号的echo一次只能输出一个字符串
echo($a, $b); # 解析语法错误
print() 函数输出一个或多个字符串。
‘’’ print ‘’’ 实际不是一个函数,使用的时候可以不用带括号
返回值固定为1
$a = 1;
$b = 'abc';
$c = '2a';
print $a; # 输出 1
print $b,$c; # 解析语法错误
print $a, $b, $c; # 解析语法错误
print($a); # 输出 1,带括号的echo一次只能输出一个字符串
print($a, $b); # 解析语法错误
- print_r
print_r() 函数用于打印变量,以更容易理解的形式展示。
第二个参数传值为真时,会将要打印出的东西返回,不直接输出
print_r($var, true)第二个参数传值为假时,会直接输出打印结果,并返回1
print_r($var, false)
$a = 1;
$b = 'abc';
$c = '2a';
print_r($a); # 输出 1
$d = print_r($b,$c); # 无输出,将$b的值返回给$d,因为$c为真值
print_r($a, $b, $c); # 解析语法错误 最多2个参数
$e = print_r($a, $b); # 无输出,会将$a的值返回给$e,因为$b为真值
echo print_r($b); # 输出 abc1 先输出print_r,echo出print_r的返回值
echo、print、print_r都可以输出变量
print比echo速度稍慢
echo不是函数可以不用带括号使用,print_r是函数必须带括号使用,print函数可以带也可以不带。
print_r一次只能输出一个变量
print_r可以把结果直接输出也可以把结果返回赋值给一个新的变量
echo、print只能输出打印简单变量的值[如 数字,字符串]
print_r可以打印复杂变量[如对象,数组]