php输出echo、print、print_r、printf、sprintf、var_dump等函数的区别比较

echo同时计算_php 输出函数比较

echo,语言结构,非函数,无括号时可以多个值,用逗号分割。整形和字符串,布尔类型会转换成1或空,无返回值(推荐学习:PHP编程从入门到精通)

echo() 实际上不是一个函数,是php语句,因此您无需对其使用括号。不过,如果您希望向 echo() 传递一个以上的参数,那么使用括号会发生解析错误。而且echo是返回void的,并不返回值,所以不能使用它来赋值。

print,语言结构,非函数,只能一个参数值,比echo慢。打印类型同echo,无返回值

print() 和 echo() 用法一样,但是echo速度会比print快一点点。实际上它也不是一个函数,因此您无需对其使用括号。

print_r,可以输出整形、字符串、数组、对象,第二个参数设定为true,将打印内容返回

print_r函数打印关于变量的易于理解的信息。mixed print_r ( mixed $expression [, bool return ] )

如果变量是string , integer or float , 将会直接输出其值,如果变量是一个数组,则会输出一个格式化后的数组,便于阅读,也就是有key和value对应的那种格式。对于object对象类同。

print_r有两个参数,第一个是变量,第二个可设为true,如果设为true,则会返回字符串,否则返回布尔值TRUE。

sprintf,把格式化的字符串写入变量中,返回格式化好的字符串

printf,输出格式化的字符串,无返回值

fprintf,把格式化的字符串写入指定的输出流(例如:文件或数据库),无返回值

vfprintf,把格式化的字符串写到指定的输出流(例如:文件或数据库),参数是数组,无返回值

vprintf,输出格式化的字符串,参数位于数组中,无返回值

vsprintf,把格式化字符串写入变量中,参数位于数组中,返回格式化的字符串

var_dump,可以打印多个变量及其类型,中间用逗号隔开,可以打印布尔值,无返回值

var_export,返回合法的php代码,可以打印布尔值第二个参数设定为true,可以将打印内容返回给变量