php中http_build_query 的一個(gè)問(wèn)題
更新時(shí)間:2012年03月25日 22:20:20 作者:
http_build_query 遠(yuǎn)程攻擊者可以利用漏洞獲得敏感內(nèi)存信息。請(qǐng)大家謹(jǐn)慎使用
當(dāng)我們使用CURL來(lái)post數(shù)據(jù)的時(shí)候,需要設(shè)置post的數(shù)據(jù)
curl_setopt($c, CURLOPT_POSTFIELDS, $post_data);
假如這里的$data是
$data = array(
'name'=>'scofield',
'time'=>'2012-2-3'
)
接下來(lái),需要先將$data變成字符串
$post_data = http_build_query($data);
而采用 http_build_query 轉(zhuǎn)換后再
curl_setopt($c, CURLOPT_POSTFIELDS, $post_data);
看起來(lái)沒(méi)有什么問(wèn)題。但在實(shí)際操作中,$post_data 并沒(méi)有被post過(guò)去。于是,自己寫(xiě)了個(gè)轉(zhuǎn)換的方法后就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 童鞋的測(cè)試 http_build_query($data,"","&"); 即可,無(wú)需自己寫(xiě)方法解析了。
http_build_query 遠(yuǎn)程攻擊者可以利用漏洞獲得敏感內(nèi)存信息。請(qǐng)大家謹(jǐn)慎使用
curl_setopt($c, CURLOPT_POSTFIELDS, $post_data);
假如這里的$data是
復(fù)制代碼 代碼如下:
$data = array(
'name'=>'scofield',
'time'=>'2012-2-3'
)
接下來(lái),需要先將$data變成字符串
$post_data = http_build_query($data);
而采用 http_build_query 轉(zhuǎn)換后再
curl_setopt($c, CURLOPT_POSTFIELDS, $post_data);
看起來(lái)沒(méi)有什么問(wèn)題。但在實(shí)際操作中,$post_data 并沒(méi)有被post過(guò)去。于是,自己寫(xiě)了個(gè)轉(zhuǎn)換的方法后就OK了。
復(fù)制代碼 代碼如下:
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 童鞋的測(cè)試 http_build_query($data,"","&"); 即可,無(wú)需自己寫(xiě)方法解析了。
http_build_query 遠(yuǎn)程攻擊者可以利用漏洞獲得敏感內(nèi)存信息。請(qǐng)大家謹(jǐn)慎使用
您可能感興趣的文章:
- PHP函數(shù)http_build_query使用詳解
- PHP實(shí)現(xiàn)通過(guò)URL提取根域名
- php獲取當(dāng)前頁(yè)面完整URL地址
- php動(dòng)態(tài)添加url查詢參數(shù)的方法
- php檢測(cè)url是否存在的方法
- php中使用url傳遞數(shù)組的方法
- php中解析帶中文字符的url函數(shù)分享
- php使用正則表達(dá)式獲取圖片url的方法
- php進(jìn)行支付寶開(kāi)發(fā)中return_url和notify_url的區(qū)別分析
- PHP獲取當(dāng)前完整URL地址的函數(shù)
- thinkphp四種url訪問(wèn)方式詳解
- PHP使用http_build_query()構(gòu)造URL字符串的方法
相關(guān)文章
探討多鍵值cookie(php中cookie存取數(shù)組)的詳解
本篇文章是對(duì)多鍵值cookie(php中cookie存取數(shù)組)進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下2013-06-06php函數(shù)傳值的引用傳遞注意事項(xiàng)分析
這篇文章主要介紹了php函數(shù)傳值的引用傳遞注意事項(xiàng),涉及php配置文件的設(shè)置及數(shù)組函數(shù)的使用技巧,需要的朋友可以參考下2016-06-06asp函數(shù)split()對(duì)應(yīng)php函數(shù)explode()
今天小編就為大家分享一篇關(guān)于asp函數(shù)split()對(duì)應(yīng)php函數(shù)explode(),小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-02-02php截取字符串并保留完整xml標(biāo)簽的函數(shù)代碼
截取字符串并保留完整xml標(biāo)簽的php代碼,有需要的朋友可以參考下2013-02-02ASP和PHP實(shí)現(xiàn)生成網(wǎng)站快捷方式并下載到桌面的方法
這篇文章主要介紹了PHP實(shí)現(xiàn)生成網(wǎng)站快捷方式并下載到桌面的方法,比加入收藏、設(shè)為首頁(yè)更給力哦,需要的朋友可以參考下2014-05-05php圖片加水印原理(超簡(jiǎn)單的實(shí)例代碼)
我看到網(wǎng)上有好多關(guān)于圖片加水印的類,寫(xiě)的很好 ,我這里只是把相應(yīng)的原理寫(xiě)下,具體需求,根據(jù)自己的情況來(lái)修改,很簡(jiǎn)單的,寫(xiě)的不好,高手見(jiàn)諒2013-01-01