php中http_build_query 的一个问题


Posted in PHP onMarch 25, 2012

当我们使用CURL来post数据的时候,需要设置post的数据
curl_setopt($c, CURLOPT_POSTFIELDS, $post_data);

假如这里的$data是

$data = array( 
'name'=>'scofield', 
'time'=>'2012-2-3' 
)

接下来,需要先将$data变成字符串
$post_data = http_build_query($data);
而采用 http_build_query 转换后再
curl_setopt($c, CURLOPT_POSTFIELDS, $post_data);

看起来没有什么问题。但在实际操作中,$post_data 并没有被post过去。于是,自己写了个转换的方法后就OK了。

function getStr($array,$Separator='&') { 
if (empty($array)) 
return; 
if (!is_array($array)) { 
return $array; 
} 
$returnStr = ''; 
foreach ($array as $key => $val) { 
$temp = ''; 
if (is_array($val)) { 
for ($i = 0; $i < count($val); $i++) { 
$returnStr .= $key . '[' . $i . ']' . '=' . $val[$i] . $Separator; 
} 
} else { 
$returnStr.= $key . '=' . $val . $Separator; 
} 
} 
$returnStr = substr(trim($returnStr), 0, -1); 
return $returnStr; 
}

感谢 黄斌-huangbin 童鞋的测试 http_build_query($data,"","&"); 即可,无需自己写方法解析了。

http_build_query 远程攻击者可以利用漏洞获得敏感内存信息。请大家谨慎使用

PHP 相关文章推荐
PHP的变量类型和作用域详解
Mar 12 PHP
php实现paypal 授权登录
May 28 PHP
php根据用户语言跳转相应网页
Nov 04 PHP
PHP的Json中文处理解决方案
Sep 29 PHP
php 多文件上传的实现实例
Oct 23 PHP
php实现基于PDO的预处理示例
Mar 28 PHP
php之可变函数的实例详解
Sep 13 PHP
PHP 进度条函数的简单实例
Sep 19 PHP
PHP封装的XML简单操作类完整实例
Nov 13 PHP
PHP连接及操作PostgreSQL数据库的方法详解
Jan 30 PHP
php实现获取近几日、月时间示例
Jul 06 PHP
thinkphp5.1 框架导入/导出excel文件操作示例
May 25 PHP
php正则表达匹配中文问题分析小结
Mar 25 #PHP
二招解决php乱码问题
Mar 25 #PHP
php引用地址改变变量值的问题
Mar 23 #PHP
奇怪的PHP引用效率问题分析
Mar 23 #PHP
php地址引用(php地址引用的效率问题)
Mar 23 #PHP
PHP遍历数组的几种方法
Mar 22 #PHP
php遍历数组的方法分享
Mar 22 #PHP
You might like
php读取二进制流(C语言结构体struct数据文件)的深入解析
2013/06/13 PHP
PHP使用Mysql事务实例解析
2014/09/08 PHP
100行PHP代码实现socks5代理服务器
2016/04/28 PHP
慎用 somefunction.prototype 分析
2009/06/02 Javascript
键盘 keycode的值 javascript时触发事件时很有用的要素
2009/11/02 Javascript
jquery异步调用页面后台方法&amp;#8207;(asp.net)
2011/03/01 Javascript
jQuery中 noConflict() 方法使用
2013/04/25 Javascript
JS网页图片按比例自适应缩放实现方法
2014/01/15 Javascript
jquery加载图片时以淡入方式显示的方法
2015/01/14 Javascript
javascript简单实现跟随滚动条漂浮的返回顶部按钮效果
2016/08/19 Javascript
利用Js+Css实现折纸动态导航效果实例源码
2017/01/25 Javascript
js中作用域的实例解析
2017/03/16 Javascript
nodeJS微信分享
2017/12/20 NodeJs
原生JavaScript实现todolist功能
2018/03/02 Javascript
微信小程序使用template标签实现五星评分功能
2018/11/03 Javascript
Python中操作MySQL入门实例
2015/02/08 Python
Python中Continue语句的用法的举例详解
2015/05/14 Python
python实现将文本转换成语音的方法
2015/05/28 Python
Python整型运算之布尔型、标准整型、长整型操作示例
2017/07/21 Python
基于python 二维数组及画图的实例详解
2018/04/03 Python
只需7行Python代码玩转微信自动聊天
2019/01/27 Python
python制作抖音代码舞
2019/04/07 Python
python如何以表格形式打印输出的方法示例
2019/06/21 Python
解决keras加入lambda层时shape的问题
2020/06/11 Python
Python开发.exe小工具的详细步骤
2021/01/27 Python
美国标志性加大尺码时装品牌:Ashley Stewart
2016/12/15 全球购物
财产公证书
2014/04/10 职场文书
团结就是力量演讲稿
2014/05/21 职场文书
胡雪岩故居导游词
2015/02/06 职场文书
召开会议通知范文
2015/04/15 职场文书
交心谈心活动总结
2015/05/11 职场文书
宝宝满月宴答谢词
2015/09/30 职场文书
2016年大学生社会实践心得体会
2015/10/09 职场文书
护士心得体会范文
2016/01/25 职场文书
golang中的空接口使用详解
2021/03/30 Python
Pygame Draw绘图函数的具体使用
2021/11/17 Python