1、echo 输出一个或者多个字符串或变量值,它不是一个函数,没有返回值,在写法上,它可以省略小括号。如:
echo ("hello world!");
echo "hello world!";
$str="hello world!";
echo $str,"hello world!";
2、print 用于输出一个或多个字符串或变量值的信息。它只能打印出简单类型变量的值(如int,string),不能打印数组和对象。它本质上也是一个语言结构而非函数,因此它无法被“变量函数”调用。它也可以省略小括号,有返回值并且总是1。如:
print "hello world!";
$a=print("hello world!");
echo $a;
注:print() 和 echo() 用法一样,但是echo速度会比print快一点点
3、print_r()是函数,用于打印关于变量的易于理解的信息。
print_r 函数原型:bool print_r (mixed expression[, bool return] )
如果变量是string , integer or float , 将会直接输出其值,如果变量是一个数组,则会输出一个格式化后的数组,便于阅读,也就是有key和value对应的那种格式。对于object对象类同。print_r有两个参数,第一个是变量,第二个可设为true,如果设为true,则会返回字符串,否则返回布尔值TRUE。如:
$a="hello world!";
$c = print_r($a);
echo $c; // $c的值是TRUE
$c = print_r($a, ture);
echo $c; // $c的值是字符串hello world!
4、var_dump() 打印变量的相关信息
它用于显示一个或多个表达式的结构信息,包括表达式的类型与值。数组将递归展开值,通过缩进显示其结构。它是直接将结果输出到浏览器的,如果需要将结果保存到一个string变量中,可使用输出控制函数来捕获当前函数的输出。如:
$a = array(1, 2, array("a", "b", "c"));
var_dump($a);
$b = 3.1;
$c = true;
var_dump($b, $c);
输出结果:
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
array(3) {
[0]=>
string(1) "a"
[1]=>
string(1) "b"
[2]=>
string(1) "c"
}
}
float(3.1)
bool(true)
注:print_r和var_dump都能输出数组和对象,但print_r对布尔型的输出不太明显;var_dump输出比较详细,一般调试时用得多。
echo ("hello world!");
echo "hello world!";
$str="hello world!";
echo $str,"hello world!";
2、print 用于输出一个或多个字符串或变量值的信息。它只能打印出简单类型变量的值(如int,string),不能打印数组和对象。它本质上也是一个语言结构而非函数,因此它无法被“变量函数”调用。它也可以省略小括号,有返回值并且总是1。如:
print "hello world!";
$a=print("hello world!");
echo $a;
注:print() 和 echo() 用法一样,但是echo速度会比print快一点点
3、print_r()是函数,用于打印关于变量的易于理解的信息。
print_r 函数原型:bool print_r (mixed expression[, bool return] )
如果变量是string , integer or float , 将会直接输出其值,如果变量是一个数组,则会输出一个格式化后的数组,便于阅读,也就是有key和value对应的那种格式。对于object对象类同。print_r有两个参数,第一个是变量,第二个可设为true,如果设为true,则会返回字符串,否则返回布尔值TRUE。如:
$a="hello world!";
$c = print_r($a);
echo $c; // $c的值是TRUE
$c = print_r($a, ture);
echo $c; // $c的值是字符串hello world!
4、var_dump() 打印变量的相关信息
它用于显示一个或多个表达式的结构信息,包括表达式的类型与值。数组将递归展开值,通过缩进显示其结构。它是直接将结果输出到浏览器的,如果需要将结果保存到一个string变量中,可使用输出控制函数来捕获当前函数的输出。如:
$a = array(1, 2, array("a", "b", "c"));
var_dump($a);
$b = 3.1;
$c = true;
var_dump($b, $c);
输出结果:
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
array(3) {
[0]=>
string(1) "a"
[1]=>
string(1) "b"
[2]=>
string(1) "c"
}
}
float(3.1)
bool(true)
注:print_r和var_dump都能输出数组和对象,但print_r对布尔型的输出不太明显;var_dump输出比较详细,一般调试时用得多。