PHP基础-echo,print,print_r,var_export,var_dump
在PHP当中,跟输出相关的语句或函数,echo,print,print_r,var_export,var_dump,他们可以笼统的概括为都是输出变量内容的。但是他们之间还是有很大的差别。
1. Echo
Echo用于输出一个或者多个字符串或变量值,他是PHP语句,不是函数。因为他不是函数,所以他也没有返回值的。
例:
Echo $str;
Echo ‘hello world!’;
这里说明一下PHP中有个函数何其单词非常相似,即each,each()函数的作用是生成一个由数组当前内部指针所指向的元素的键名和键值组成的数组,并把内部指针向前移动,
2. Print
Print()用于输出一个或者多个字符串或变量值得信息。他只能打印出简单类型变量的值如(int,string),不能打印数组或者对象。它本质上市一个预言结构而非函数,因此他无法被变量函数调用,print又返回值,并且总是1.
注意:print()稍慢于echo().
3. Print_r
Print_r()用于打印变量的易于理解的信息。
原型是:bool print_r(mixedexpression,[bool return])
由此可见print_r返回值是bool型的,参数是mix类型的,可以使字符串,整型,数组,对象类print_r()显示关于一个变量易于理解的信息。如果给出的是string、integer或float,将打印变量值本身。如果是array,按照一定格式显示键和元素。
注意:print_r()对数组的作用后将把数组的指针移到最后边。使用Reset()可将指针回到开始处。
如果想捕捉print_r()的输出,可使用return参数,若此参数设为true,print_r()将不打印结果,而是返回其输出。
例:
<?PHP
$b = array(‘m’ =>’monkey’);
$result = print_r($b,true);
?>
4. Var_export
Var_export()函数用于输出或返回一个变量的字符串表示。
Var_export()函数原型:
Mixed var_export(mixed$expression,[bool $return])
此函数返回关于传递给该函数的变量的结构信息,他和var_dump()类似,不同的是其返回的表示是合法的PHP代码。你可以通过将函数的第二个参数设置为TRUE,从而返回变量的表示。
例:
<?PHP
$a = array(1,2,array(“a”,”b”,”c”));
Var_export($a);
?>
运行结果:
Array(0=>1,1=>2,2=>array(0=>’a’,1=>’b’,2=>’c’,),)
5. Var_dump
Var_dump()函数用于显示关于一个或多个表达式的结构信息,包括表达式的类型和值。数组将递归展开值,通过缩进显示其结构。他是直接将结果输出到浏览器的,如果需要将结果保存到一个string变量中,可使用输出控制函数来捕获当前函数的输出。
<?PHP
$a = array(1,2,array(“a”,”b”,”c”));
Var_dump($a);
$b = 3.1;
$c= true;
Var_dump($b,$c);
?>
运行结果:
array(size=3)
0=>int 1
1=>int 2
2=>
Array(size = 3)
0=>string ‘a’(length =1)
1=>string ‘b’(length=1)
2=>string ‘c’ (length=1)
Float 3.1
Boolen true