[调试日志]用php函数var_export把多维数组file_put_contents写入并打印到日志,以方便调试之多维数组,用php5中的var_export函数示例,顺带介绍http_build_query(转)
- 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输出:
- echo "curl -d\"".http_build_query($data)."\" ".$url;
echo "curl -d\"".http_build_query($data)."\" ".$url;
临时调试:
- $result= var_export ( $_POST,True);
- file_put_contents("/tmp/jack.txt",$result,FILE_APPEND);
$result= var_export ( $_POST,True);
file_put_contents("/tmp/jack.txt",$result,FILE_APPEND);
路径变量:
- $uploadSliceLogName = "/data/htdocs/xiyou_devel/data/logs/".date("Ymd")."/uploadedSliceReceiveInfo.txt";
- 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);
- $file_string = var_export ( $_POST,True);
- 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 ):
- @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的源码:
可以看到 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也可以,但我们只是想看看数组里面是什么,但又不想打印到页面上。 实例:
?>
结果: array ( 0 => 1, 1 => 2, 2 => array ( 0 => 'a', 1 => 'b', 2 => 'c', ), )
http_build_query 把数组整成一个get串:
- file_put_contents("/tmp/jack.txt", "\n".http_build_query($arg)."\n",FILE_APPEND);
[调试日志]用php函数var_export把多维数组file_put_contents写入并打印到日志,以方便调试之多维数组,用php5中的var_export函数示例,顺带介绍http_build_query(转)的更多相关文章
- php5 中魔术方法函数有哪几个
魔术函数:9.3 构造函数:__construct() 9.3.1 实例化对象时被调用. 9.3.2 在类中,构造函数是用来初始化对象的,利用构造函数,可以操作对象,并改变它的值. 9.3.3 当__ ...
- LoadRunner中的Web 函数列表
LoadRunner中的Web 函数列表 web test LoadRunner fuction_list D:\Program Files (x86)\Mercury Interactive\Mer ...
- react 在 componentWillMount() 中调用异步函数时,componentWillMount() finishes after render()
刚开始使用 react,很多属性.方法不是很熟.在此记录下我所遇到的问题及解决方法. 我在 componentWillMount() 中调用了一个异步函数,在返回结果中调用 this.setState ...
- php -- PHP5中file_get_contents函数获取带BOM的utf-8文件内容
最近,在用file_get_contents函数来取得文本的内容的时候,出现了一个情况(如下),苦思冥想了n久,不得其解,最后,果然还是得靠百度啊..... 百度到一个解释,下面是原文: PHP5中的 ...
- SQL Server中存储过程与函数的区别
本质上没区别.只是函数有如:只能返回一个变量的限制.而存储过程可以返回多个.而函数是可以嵌入在sql中使用的,可以在select中调用,而存储过程不行.执行的本质都一样. 函数限制比较多,比如不能用临 ...
- 在lldb调试中调用c++函数
在lldb调试时,调用oc对象的方法不足为奇,因为msgSend是有原型导出的,oc对象的方法都运行期绑定的,绑定信息都在objc_class中.只要在调试中[receiver sel]之类,lldb ...
- 读书笔记 effective c++ Item 9 绝不要在构造函数或者析构函数中调用虚函数
关于构造函数的一个违反直觉的行为 我会以重复标题开始:你不应该在构造或者析构的过程中调用虚函数,因为这些调用的结果会和你想的不一样.如果你同时是一个java或者c#程序员,那么请着重注意这个条款,因为 ...
- Log4j配置详解及不同的包(package)下的日志写入到不同的日志文件下
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt262 以下都是log4j.properties要写入的内容: 一:参数介绍: ...
- Xposed框架Hook Android应用的所有类方法打印Log日志
本文博客地址:https://blog.csdn.net/QQ1084283172/article/details/80954759 在进行Android程序的逆向分析的时候,经常需要Android程 ...
随机推荐
- 一个由自增运算符以及C语法顺序细节引起的bug
一.问题描述 在编写modbus代码时发生一件由语法细节引起的bug,起因是自增运算符以及C语法顺序. 输入的数据是2233=0X08B9,高低字节顺序是0x08 0xB9, 使用modbus po ...
- [GUI] Linux中的图形管理
转:http://www.cnblogs.com/yongpenghan/p/4555619.html 做了一段时间linux下与QT事件相关的工作,经常会遇到X11,总是苦于无法完全理解其与linu ...
- HTTP协议—常见的HTTP响应状态码解析
常见的HTTP响应状态码解析 1XX Informational(信息性状态码) 2XX Success(成功状态码) 3XX Redirection(重定向状态码) 4XX Client Error ...
- oracle长连接超时设置
方法一.在sqlnet.ora中设置参数 如需要设置客户端空闲10分钟即被中断,则在sqlnet.ora的末尾添加SQLNET.EXPIRE_TIME=10注:sqlnet.ora文件的路径在$ORA ...
- 主攻ASP.NET.4.5.1 MVC5.0之重生:政府行政网站常用友情链接跳转javascript[干货分享]
<!-----------------------------------> <script language="JavaScript" type="t ...
- class_alias--为一个类创建别名
class_alias--为一个类创建别名 bool class_alias ( string $original , string $alias [, bool $autoload = TRUE ] ...
- 关于form表单中button按钮自动提交问题
坑:点击确认按钮,form表单提交2次,发送后台2次请求 //错误代码: <Button id="btnSubmit" name="btnSubmit" ...
- 移动端的坑 之 在可编辑的div中实现placeholder
1.当我们个 div 设置了 contenteditable = "true" 这个块状元素就可以编辑了, 如果要实现 placeholder 直接写上去是没有效果的 <d ...
- Springboot- Caused by: org.hibernate.AnnotationException: No identifier specified for entity:
错误与异常: Caused by: org.hibernate.AnnotationException: No identifier specified for entity: 原因:引用了不对的包, ...
- ios 获取导航栏和状态栏高度,针对iPhoneX
因为iPhoneX的产生,原本的导航栏再也不是44了,那么会出现什么问题呢?在隐藏导航栏的页面,原本的高度要向上调整一个导航栏+状态栏的高度.那么iPhoneX的导航栏高度不是44了,我们需要手动获取 ...