echo、print、print_r、printf、sprintf、var_dump的区别

首先谈一下6个的基本区别吧,除了echo,其他的都是函数,sprint两者都可以,都必须带参数,sprintf还要带输出的类型且不能直接输出,需要赋值。

首先是数字

每个输出的差异不大,只是var_dump有标明字符的类型和长度,因为1我用双引号包了起来,所以他是字符串类型。

还有就是sprintf输出需要给其传"%d"参数,表明要输出什么格式,如同C函数

%d,用来输出十进制整数
%f,用来输出实数(包括单,双精度),以小数形式输出
%c,用来输出一个字符
%s,用来输出一个字符串


字符串的输出和数字的差不多。

数组的输出

只有2个能输出数组,然后我又尝试了二维数组,结果差不多,就不展示了。

对象的输出

只有print_r和var_dump能输出,同数组的输出。

然后我们在来看下var_dump和print_r的输出时间对比,我输出了1W次来参照

1.字符串对比:0.43102502822876 :0.089004993438721,print_r占优

2.数字对比:0.37402105331421:0.10100603103638,print_r占优

3.数组对比:1.100063085556:0.15000891685486,print_r占优

4.对象对比:0.74004220962524:0.16900992393494,print_r占优

全部都是print_r占优

 

综上所述,print_r和var_dump是2个一直都能用的函数,建议在检查参数的时候可以调用,调用其他方法是需要注意其使用范围。如果在这2者中选择的话print_r的执行效率比var_dump高很多,但是我觉得var_dump的输出格式比print_r的容易看多,所以选择的话就见仁见智了。

转载于:https://www.cnblogs.com/zekeny/p/6698021.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值