博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
php调试时echo,print_r(),var_dump()的区别
阅读量:6951 次
发布时间:2019-06-27

本文共 1938 字,大约阅读时间需要 6 分钟。

简单说:

() 能打印出类型 () 只能打出值 echo() 是正常输出... 需要精确调试的时候用 (); 一般查看的时候用 () 另外 , echo不能显示数组  但var_dump/print_r可以

 

echo()

可以一次输出多个值,多个值之间用逗号分隔。echo是语言结构(language construct),而并不是真正的函数,因此不能作为表达式的一部分使用。

print()

函数print()打印一个值(它的参数),如果字符串成功显示则返回true,否则返回false。

print_r()

可以把字符串和数字简单地打印出来,而数组则以括起来的键和值得列表形式显示,并以Array开头。但print_r()输出布尔值和NULL的结果没有意义,因为都是打印"\n"。因此用var_dump()函数更适合调试。

打印关于变量的易于理解的信息,如果给出的是 string、integer 或 float,将打印变量值本身。如果给出的是 array,将会按照一定格式显示键和元素。object 与数组类似。 记住,print_r() 将把数组的指针移到最后边。使用 reset() 可让指针回到开始处。

var_dump()

此函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值。数组将递归展开值,通过缩进显示其结构。

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

var_dump和print_r的区别:

var_dump返回表达式的类型与值而print_r仅返回结果,相比调试代码使用var_dump更便于阅读。

eg:二维数组的输出:

$arr=array(           array('a'=>'aa','b'=>'bbb','c'=>'ccc'),           array('a'=>'ddd','b'=>'eee','c'=>'fff'),           array('a'=>'gg','b'=>'hh'));print_r($arr);//print_r输出:/*Array ( [0] => Array ( [a] => aa [b] => bbb [c] => ccc )                    [1] => Array ( [a] => ddd [b] => eee [c] => fff )                    [2] => Array ( [a] => gg [b] => hh ) ) */var_dump($arr);//var_dump输出:/* array (size=3)  0 =>   array (size=3)   'a' => string 'aa' (length=2)   'b' => string 'bbb' (length=3)   'c' => string 'ccc' (length=3)  1 =>   array (size=3)           'a' => string 'ddd' (length=3)   'b' => string 'eee' (length=3)   'c' => string 'fff' (length=3)  2 =>   array (size=2)   'a' => string 'gg' (length=2)   'b' => string 'hh' (length=2)*/

 

下面在给出一个json格式的输出:

$arr=array(array('a'=>'aa','b'=>'bbb','c'=>'ccc'),            array('a'=>'ddd','b'=>'eee','c'=>'fff'),           array('a'=>'gg','b'=>'hh'));$arra=json_encode($arr);print_r($arra);//print_r输出:// [{"a":"aa","b":"bbb","c":"ccc"},{"a":"ddd","b":"eee","c":"fff"},{"a":"gg","b":"hh"}]var_dump($arra);//var_dump输出://string '[{"a":"aa","b":"bbb","c":"ccc"},{"a":"ddd","b":"eee","c":"fff"},{"a":"gg","b":"hh"}]' (length=84)

 

转载地址:http://kqkil.baihongyu.com/

你可能感兴趣的文章
zabbix监控nginx
查看>>
兼容火狐浏览器的select下拉框样式
查看>>
购物商城Web开发第七天
查看>>
TensorFlow安装解惑
查看>>
Windows 后台执行jar
查看>>
纯js实现10分钟倒计时
查看>>
敏捷实践简单分享补充
查看>>
Apple Push Notification service
查看>>
Linux下修改Mysql的用户(root)的密码
查看>>
python学习笔记之常用操作符
查看>>
poj 3126 Prime Path (bfs)
查看>>
事件代理
查看>>
[Influxdb]记录
查看>>
图的最小生成树(普利姆prim算法)
查看>>
干货:实现数据可视化的几个工具选择(工具+编程语言)
查看>>
分享职场心得《10》
查看>>
NYoj 685 查找字符串
查看>>
noip普及组2018T2 龙虎斗
查看>>
sql 事物以及回滚
查看>>
drawrect&layoutsubviews
查看>>