PHP 后端调试输出方法(笨办法)

#####在调试web网站的时候,可以用var_dump()和 print_r()输出数据来进行程序的简单调试。

dump() -----> 函数是thinkphp 自定义的调试输出函数

var_dump() ----->PHP自带的调试输出函数,此函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值。数组将递归展开值,通过缩进显示其结构。

pirnt_r() ----->PHP自带的输出函数,显示关于一个变量的易于理解的信息。如果给出的是 string、integer 或 float,将打印变量值本身。如果给出的是 array,将会按照一定格式显示键和元素

简单封装下var_dump()输出信息

function p($var){
    echo '
';
    echo var_dump($var);
    echo '
';
}

pirnt_r($var)更多用于调试输出数组信息

function p($var){
    echo '
';
    echo pirnt_r($var);
    echo '
';
}

#####在调试前后端分离的时候,会感到茫然,不知道如何输出调试变量等信息,我们可以把信息输出到文件中再进行查看,笨人笨办法,我相信有更好的调试方法,高端玩法待学会后再记录吧。下面提供三种输出到文件的方式:

//输出变量或数组到文件
$fp = fopen('./a.txt', 'a+b');
fwrite($fp, print_r($content, true));
fclose($fp);
 
 
//打印单个变量到文件
error_log($file, 3, "/tmp/php_3.log");
 
 
//输出对象到文件
file_put_contents("/tmp/qujun_php2.log", var_export($objects,true), FILE_APPEND);


file_put_contents("../ttt.log", var_export($data,true), FILE_APPEND);

//输出内容换行
file_put_contents("../ttt.log", $data.PHP_EOL, FILE_APPEND);

很多时候记录日志需要换行。

不建议使用\r\n

因为:在windows中\r\n是换行
在Mac中\r是换行
在Liunx中\n是换行
但是PHP提供了一个常量来匹配不同的操作系统,即:PHP_EOL

参考 :
http://blog.51cto.com/qujunorz/1940787
http://php.net/docs.php
http://php.net/manual/zh/function.var-dump.php
http://php.net/manual/zh/function.print-r.php
https://blog.csdn.net/wlzx120/article/details/53781813

你可能感兴趣的:(后端,PHP)