首页 > 代码库 > 输出echo print print_r() var_dump()的区别

输出echo print print_r() var_dump()的区别

echo:

语言结构,echo或echo()均可;能够输出一个以上字符串。可以接受多个参数;当是一次输出多个值,多个值之间用逗号分隔。没有返回值。

print:

语言结构(有的地方也说是函数,但不是实际函数,故一般不需要对其使用()),print或print()均可;只能输出一个字符串,只能接受一个参数;并始终返回1。只能打印出简单类型变量的值(如 int,string),不能输出数组和对象.

提示:echo 比 print 稍快,因为它不返回任何值。

print_r():

是函数,有返回值。 可以递归打印出复杂类型变量的值(如数组,对象),而数组则以括起来的键和值得列表形式显示。

var_dump():

判断一个变量的类型与长度,并输出变量的数值,如果变量有值输的是变量的值并回返数据类型。此函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值。数组将递归展开值,通过缩进显示其结构。

 例子

1、echo可以输出多个字符串

echo ‘a‘,‘b‘,‘c‘;
echo "This", " string", " was", " made", " with multiple parameters.";

如果你非要加上圆括号,注意写成echo (‘a‘,‘b‘,‘c‘);是错误的,应该写成:

echo (‘a‘),(‘b‘),(‘c‘);

它没有像函数的行为,所以不能用于函数的上下文

2、print只能输出一个字符串,它可以表现得像一个函数

$ret = print ‘Hello World‘;

所有它能用在更复杂的表达式中。

 

<?php
$str1 = "I love Shanghai!";
$str2="What a nice day!";
print $str1 . " " . $str2;  //I love Shanghai! What a nice day!
echo $str1 . " " . $str2;   //I love Shanghai! What a nice day!
print $str1 , $str2;        //Parse error: syntax error, unexpected ‘,‘ 
echo $str1 , $str2;         //I love Shanghai! What a nice day!

 

输出echo print print_r() var_dump()的区别