PHP 中 var_export、print_r、var_dump 调试中的区别
php  /  管理员 发布于 6年前   148
1、output basic type 代码 结果 (1)前端: 'test' test /Users/xjnotxj/Program/PhpstormProject/colin/index.php:9:string 'test' (length=4) ----------------- /Users/xjnotxj/Program/PhpstormProject/colin/index.php:15:string 'test' (length=4) (2)index.log: 'test' test 2、output array 代码 结果 (1)前端: array ( 'a' => 1, 'b' => '222', 'c' => 3, ) Array ( [a] => 1 [b] => 222 [c] => 3 ) /Users/xjnotxj/Program/PhpstormProject/colin/index.php:13: array (size=3) 'a' => int 1 'b' => string '222' (length=3) 'c' => int 3 ----------------- /Users/xjnotxj/Program/PhpstormProject/colin/index.php:19: array (size=3) 'a' => int 1 'b' => string '222' (length=3) 'c' => int 3 (2)index.log: 3、output object 代码 结果 (1)前端: foo::__set_state(array( 'n' => NULL, )) (2)index.log: 总结: 1、输出结果的详细性: var_export ≈ print_r < var_dump 2、调试的时候,调用 var_export、print_r、var_dump 的时候, 不用 在前加 echo 。 3、var_export,print_r 的 第二个参数为true则返回值。var_dump 不支持 ,所以用 file_put_contents 输出调试的时候不要用 var_dump。 4、推荐开发环境的调试直接使用 var_dump,可以获得详细的调试信息和代码行数定位;生产环境的调试使用 var_export 或 print_r,第二个参数记得设置为 true 转为返回输出值,而不是直接输出到前端影响线上。 总结 以上所述是小编给大家介绍的PHP 中 var_export、print_r、var_dump 调试中的区别,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对站的支持!$n = "test";var_export($n);print_r($n);var_dump($n);echo '-----------------' . '
';file_put_contents("index.log", var_export($n, true) . PHP_EOL, FILE_APPEND);file_put_contents("index.log", print_r($n, true) . PHP_EOL, FILE_APPEND);file_put_contents("index.log", var_dump($n) . PHP_EOL, FILE_APPEND);$arr = array( "a" => 1, "b" => "222", "c" => 3,);var_export($arr);print_r($arr);var_dump($arr);echo '-----------------' . '
';file_put_contents("index.log", var_export($arr, true) . PHP_EOL, FILE_APPEND);file_put_contents("index.log", print_r($arr, true) . PHP_EOL, FILE_APPEND);file_put_contents("index.log", var_dump($arr) . PHP_EOL, FILE_APPEND);array ( 'a' => 1, 'b' => '222', 'c' => 3, ) Array ( [a] => 1 [b] => 222 [c] => 3 )
class foo{ public $n; public function do_foo() { echo "Doing foo." . $this->n; }}$object = new foo;var_export($object);print_r($object);var_dump($object);echo '-----------------' . '
';file_put_contents("index.log", var_export($object, true) . PHP_EOL, FILE_APPEND);file_put_contents("index.log", print_r($object, true) . PHP_EOL, FILE_APPEND);file_put_contents("index.log", var_dump($object) . PHP_EOL, FILE_APPEND);
foo Object ( [n] => )
/Users/xjnotxj/Program/PhpstormProject/colin/index.php:19: object(foo)[1] public 'n' => null ----------------- /Users/xjnotxj/Program/PhpstormProject/colin/index.php:25: object(foo)[1] public 'n' => nullfoo::__set_state(array( 'n' => NULL, )) foo Object ( [n] => )
您可能感兴趣的文章:
123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..路人 在
php中使用hyperf框架调用讯飞星火大模型实现国内版chatgpt功能示例中评论 教程很详细,如果加个前端chatgpt对话页面就完美了..Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号