当我们使用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; 而采用
http_build_query 转换后再 curl_setopt($c, CURLOPT_POSTFIELDS,
$post_data); 看起来没有什么问题。但在实际操作中,$post_data
并没有被post过去。于是,自己写了个转换的方法后就OK了。 复制代码 代码如下: function
getStr($array,$Separator=’&’) { if return; if { return $array; }
$returnStr = ”; foreach ($array as $key => $val) { $temp = ”; if {
for ($i = 0; $i < count { $returnStr .= $key . ‘[‘ . $i . ‘]’ . ‘=’
. $val[$i] . $Separator; } } else { $returnStr.= $key . ‘=’ . $val .
$Separator; } } $returnStr = substr, 0, -1); return $returnStr; } 感谢
黄斌-huangbin 童鞋的测试 http_build_query;
即可,无需自己写方法解析了。http_build_query
远程攻击者可以利用漏洞获得敏感内存信息。请大家谨慎使用

这个是借力打力,只是抓去朋友网的内容!!!

不过相当好用哦!

看代码:

 代码如下

<?php
$videourl=”;
function get_content($url ,$data){
 if(is_array($data)){
  $data = http_build_query($data, ”, ‘&’); 
 }
 $ch = curl_init();
 curl_setopt($ch,
CURLOPT_RETURNTRANSFER, true );
 curl_setopt($ch, CURLOPT_POST, 1);
 curl_setopt($ch, CURLOPT_HEADER, 0);
 curl_setopt($ch, CURLOPT_URL,$url);
 curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
 $result = curl_exec($ch);
 return $result;
}
$str =
get_content(‘));
$str=json_decode($str);
var_dump($str);
?>

这个测试出来的只是swf文件并不是我们要的flv文件了,后来参考一站长的写法进行了改进

核心代码:

发表评论

电子邮件地址不会被公开。 必填项已用*标注