一行解决写入日志:

  1. file_put_contents("/tmp/jack.txt", var_export($layReturnArr,TRUE),FILE_APPEND);

file_put_contents("/tmp/jack.txt", var_export($layReturnArr,TRUE),FILE_APPEND);

一行完成Curl的POST输出:

  1. echo "curl -d\"".http_build_query($data)."\" ".$url;

echo "curl -d\"".http_build_query($data)."\" ".$url;

临时调试:

  1. $result= var_export ( $_POST,True);
  2. file_put_contents("/tmp/jack.txt",$result,FILE_APPEND);

$result= var_export ( $_POST,True);
file_put_contents("/tmp/jack.txt",$result,FILE_APPEND);

路径变量:

  1. $uploadSliceLogName = "/data/htdocs/xiyou_devel/data/logs/".date("Ymd")."/uploadedSliceReceiveInfo.txt";
  2. file_put_contents($uploadSliceLogName, var_export($_REQUEST,TRUE),FILE_APPEND);

$uploadSliceLogName = "/data/htdocs/xiyou_devel/data/logs/".date("Ymd")."/uploadedSliceReceiveInfo.txt";
file_put_contents($uploadSliceLogName, var_export($_REQUEST,TRUE),FILE_APPEND);

  1. $file_string = var_export ( $_POST,True);
  2. file_put_contents("/tmp/var_export.txt",$file_string,FILE_APPEND);

$file_string = var_export ( $_POST,True);
file_put_contents("/tmp/var_export.txt",$file_string,FILE_APPEND);

在调试上传文件时,如苹果Android等(这一行来自PHP高级编程:岁月如哥【俗称:膘哥】(191295**)它提供的。2013-04-11 09:58 AM ):

  1. @file_put_contents("log.txt",var_export($_GET,$_POST,$_FILES,file_get_contents("php://input"),true),FILE_APPEND);

@file_put_contents("log.txt",var_export($_GET,$_POST,$_FILES,file_get_contents("php://input"),true),FILE_APPEND);
后记: 岁月如哥(191295**)  15:20:48 你要看一下ios下。如果图片过大。或者。。。有些异常情况发生的时候。 $_FILES都为空的。 这些我们都遇到过 收到的内容全部为空。而且会导致其他所有的变量都为空 回忆未来-向东-Jàck(3726476**)  15:23:51 那有可能是这个问题,我用上面这个直接打Post有值,呵呵。 膘哥说得对,是可能图片太大了。
调试: touch /tmp/var_export.txt
chmod -R 777 /tmp/var_export.txt
tail -f /tmp/var_export.txt
就能看到调试信息。 看了一下phpcms的源码:

  function cache_write($file, $string, $type = 'array')  {       if(is_array($string))       {           $type = strtolower($type);           if($type == 'array')           {               $string = "<?php\n return ".var_export($string,TRUE).";\n?>";           }           elseif($type == 'constant')           {               $data='';               foreach($string as $key => $value) $data .= "define('".strtoupper($key)."','".  addslashes($value)."');\n";               $string = "<?php\n".$data."\n?>";           }       }       $strlen = file_put_contents(PHPCMS_CACHEDIR.$file, $string,FILE_APPEND);  //最好加上FILE_APPEND,否则tail -f出现 tail: /tmp/friendviews.txt: file truncated   参看:http://www.xiangdong.org/blog/post/1614/        chmod(PHPCMS_CACHEDIR.$file, 0777);         return $strlen;  }

可以看到 var_export 解释下 var_export (PHP 4 >= 4.2.0, PHP 5) var_export -- 输出或返回一个变量的字符串表示 描述 mixed var_export ( mixed expression [, bool return])
此函数返回关于传递给该函数的变量的结构信息,它和 var_dump() 类似,不同的是其返回的表示是合法的 PHP 代码。
您可以通过将函数的第二个参数设置为 TRUE ,从而返回变量的表示。 应用场景: 假如我们看到一个数组是多维的,其实通过serialize之后写入文件 读出来之后unserialize也可以,但我们只是想看看数组里面是什么,但又不想打印到页面上。 实例:

<?php         $a = array ( 1 , 2 , array ( "a" , "b" , "c" ));         $file_string = var_export ( $a,True);         var_dump($file_string);         file_put_contents("/tmp/friendviews.txt",$file_string,FILE_APPEND);         exit;
?>
tail -f /tmp/friendviews.txt

结果: array (   0 => 1,   1 => 2,   2 =>   array (     0 => 'a',     1 => 'b',     2 => 'c',   ), )

http_build_query 把数组整成一个get串:

  1. file_put_contents("/tmp/jack.txt", "\n".http_build_query($arg)."\n",FILE_APPEND);

http://www.justwinit.cn/post/1627/

[调试日志]用php函数var_export把多维数组file_put_contents写入并打印到日志,以方便调试之多维数组,用php5中的var_export函数示例,顺带介绍http_build_query(转)的更多相关文章

  1. php5 中魔术方法函数有哪几个

    魔术函数:9.3 构造函数:__construct() 9.3.1 实例化对象时被调用. 9.3.2 在类中,构造函数是用来初始化对象的,利用构造函数,可以操作对象,并改变它的值. 9.3.3 当__ ...

  2. LoadRunner中的Web 函数列表

    LoadRunner中的Web 函数列表 web test LoadRunner fuction_list D:\Program Files (x86)\Mercury Interactive\Mer ...

  3. react 在 componentWillMount() 中调用异步函数时,componentWillMount() finishes after render()

    刚开始使用 react,很多属性.方法不是很熟.在此记录下我所遇到的问题及解决方法. 我在 componentWillMount() 中调用了一个异步函数,在返回结果中调用 this.setState ...

  4. php -- PHP5中file_get_contents函数获取带BOM的utf-8文件内容

    最近,在用file_get_contents函数来取得文本的内容的时候,出现了一个情况(如下),苦思冥想了n久,不得其解,最后,果然还是得靠百度啊..... 百度到一个解释,下面是原文: PHP5中的 ...

  5. SQL Server中存储过程与函数的区别

    本质上没区别.只是函数有如:只能返回一个变量的限制.而存储过程可以返回多个.而函数是可以嵌入在sql中使用的,可以在select中调用,而存储过程不行.执行的本质都一样. 函数限制比较多,比如不能用临 ...

  6. 在lldb调试中调用c++函数

    在lldb调试时,调用oc对象的方法不足为奇,因为msgSend是有原型导出的,oc对象的方法都运行期绑定的,绑定信息都在objc_class中.只要在调试中[receiver sel]之类,lldb ...

  7. 读书笔记 effective c++ Item 9 绝不要在构造函数或者析构函数中调用虚函数

    关于构造函数的一个违反直觉的行为 我会以重复标题开始:你不应该在构造或者析构的过程中调用虚函数,因为这些调用的结果会和你想的不一样.如果你同时是一个java或者c#程序员,那么请着重注意这个条款,因为 ...

  8. Log4j配置详解及不同的包(package)下的日志写入到不同的日志文件下

    详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt262 以下都是log4j.properties要写入的内容: 一:参数介绍: ...

  9. Xposed框架Hook Android应用的所有类方法打印Log日志

    本文博客地址:https://blog.csdn.net/QQ1084283172/article/details/80954759 在进行Android程序的逆向分析的时候,经常需要Android程 ...

随机推荐

  1. flask实现模仿知乎

    上个月花了一个月的时间学习flask框架实现了一个简陋的知乎,有提问,回答,写文章,个人信息页,个人信息修改等功能,因刚接触学习flask,后端代码实现很多冗余,依旧需要修改. github: htt ...

  2. web中的编码问题

    response返回有两种,一种是字节流outputstream,一种是字符流printwrite. 先说字节流,要输出“中国",给输出流的必须是转换为utf-8的“中国”,还要告诉浏览器, ...

  3. 最长公共子序列的C++实现---附二维指针的使用方法

    想了挺久到底第一篇在这儿的博客写什么好,刚好这两天又一次看到动态规划的LCS算法觉得还是有点意思的,就拿来写了写,第一篇博客就发它吧. #include<iostream> #includ ...

  4. Android编译系统简要介绍【转】

    本文转载自:http://blog.csdn.net/luoshengyang/article/details/18466779 在Android源码环境中,我们开发好一个模块后,再写一个Androi ...

  5. Go 书单

    一.<Go语言学习笔记> (未找到对应版本的电子书,大家可以去作者github:https://github.com/qyuhen/book) 推荐理由:作为时下流行的一种系统编程语言,G ...

  6. multi update caused deadlock problem

    https://social.msdn.microsoft.com/Forums/sqlserver/en-US/dba45618-1d64-4661-891d-74cab09dddf1/deadlo ...

  7. 【转载】树链剖分.By.Xminh

    轻重链剖分 其实就是俗称的树链剖分. PS:树链剖分不止有轻重链剖分.但是大多数时候的树链剖分指的就是轻重链剖分. dfs序 给树的节点重新编号,使得任意一个节点满足子树的dfs序都比它要大,而且它子 ...

  8. BZOJ4311:向量

    题意:要求支持三个操作,加入删除一个向量,询问当前向量与给定向量的最大值. 题解:线段树时间分治,每个区间做一个凸包,查询的时候到对应区间的凸包上三分. (话说我这个可能有点问题,三分那一块R-L&g ...

  9. 转:gdb相关学习

    声明本文转自:http://www.cnblogs.com/rosesmall/archive/2012/04/12/2444431.html (查看内存部分有补充) 另推荐一个入门级的好文章:htt ...

  10. 创建表空间及用户的SQL

    --创建表SOFA空间: CREATE SMALLFILE TABLESPACE "SOFA" DATAFILE 'G:\oracle\product\10.2.0\ORADATA ...