php中echo、print、print_r、var_dump、var_export区别

时间:2022-10-25 12:29:22

(1) print和echo是语言结构,echo输出多个值,多个值之间用逗号分隔,无返回值;print只能输出一个值,有返回值。echo和print输出整型和字符串,没法打印布尔型,如果true,打印1,false打印为空。

(2) print_r()除了输出整型和字符串,还可以输出数组和对象,数组和对象使用键值对形式表示,数组时候array(键值对形式);对象时候Object(键值对形式);没法打印布尔型,如果true,打印1,false和NULL打印为空。

(3) var_dump()判断变量的类型与长度,并输出变量的数值。如果是数组和对象,将递归展开值,通过缩进显示其结构。能够打印布尔和NULL。

(4) var_export()和var_dump()类似,其返回合法的php代码,其返回值可以赋值给php变量。

(5) var_dump()可以打印多个变量,中间用逗号隔开;print_r()和var_export()打印一个变量,第二个参数设定为true,将打印内容返回。

 注:

(1)echo、print语言结构,非函数,能打印整型和字符串。

(2)print_r()和var_export()打印整型、字符串外,还能打印数组、对象,以键值对形式打印数组、对象。var_export()还可打印布尔值。

(3)var_export()在第二个参数设置true,不会打印变量,而是将其以字符串形式返回,返回值可以赋值给php变量。

(4)var_dump()除了打印整型、字符串、数组、对象,还能打印布尔型。而且是输出变量类型、长度和值。