热搜:NVER node 开发 php

php curl使用

2024-07-21 23:30:02
php curl使用

##### php curl使用php curl更改页面信息```/*$curlobj = curl_init();//初始化curl_setopt($curlobj,CURLOPT_URL,"http://www.baidu.com");  //设置访问页面的urlcurl_setopt($curlobj,CURLOPT_RETURNTRANSFER,true);     //执行后不直接打印出来$output = curl_exec($curlobj);                          //执行curl_close($curlobj);                                       //关闭curlecho str_replace("百度","DLL",$output);*/```使用curl获取图片信息```header("Content-type: text/html; charset=utf-8");@header('Content-type:image/jpg');$ch = curl_init();$url="http://ww1.sinaimg.cn/mw690/78f2cc43jw1f2vtybda98j206y046t8y.jpg";curl_setopt($ch,CURLOPT_URL,$url);curl_setopt($ch,CURLOPT_RETURNTRANSFER,1); $output = curl_exec($ch);$info = curl_getinfo($ch);file_put_contents("abc.jpg",$output);curl_close($ch);```使用curl模拟post表单,上传文件```$url = "http://localhost/phpcurl/out.php";$post_data = array(    "name" => "gewenrui",    "password" =>"123");$ch = curl_init();curl_setopt($ch,CURLOPT_URL,$url);curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);curl_setopt($ch,CURLOPT_POST,1);curl_setopt($ch,CURLOPT_POSTFIELDS,$post_data);curl_setopt($ch,CURLOPT_TIMEOUT,10);$output = curl_exec($ch);$info = curl_getinfo($ch);//echo '获取'.$info['url'].'耗时'.$info['total_time'].'秒'.$info['request_size'];curl_close($ch);echo $output;上传文件$url = "http://localhost/phpcurl/out.php";$post_data = array(    "fool"  => "bar",    //上传文件此处需要添加@符号    "upload" => "@abc.jpg");$ch = curl_init();curl_setopt($ch,CURLOPT_URL,$url);curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);curl_setopt($ch,CURLOPT_POST,1);curl_setopt($ch,CURLOPT_POSTFIELDS,$post_data);$output = curl_exec($ch);curl_close($ch);echo $output;```使用curl实现批处理j```<?phpheader("Content-type: text/html; charset=utf-8");//创建两个curl资源$ch1 = curl_init();$ch2 = curl_init();$url1="http://www.baidu.com";$url2="http://www.qq.com";curl_setopt($ch1,CURLOPT_URL,$url1);curl_setopt($ch1,CURLOPT_HEADER,0);curl_setopt($ch2,CURLOPT_URL,$url2);curl_setopt($ch2,CURLOPT_HEADER,0);//创建curl批处理句柄$mh = curl_multi_init();//加上前面两个资源句柄curl_multi_add_handle($mh,$ch1);curl_multi_add_handle($mh,$ch2);//预订一个状态变量$active =  null;do{    $mrc = curl_multi_exec($mh,$active);}while($mrc == CURLM_CALL_MULTI_PERFORM);//循环调用curl_multi_exec(),它返回一个状态值,当这个值等于常量curlm_call_multi_perform的时候工作没有处理完毕while($active && $mrc ==CURLM_OK){    if(curl_multi_select($mh)!=-1){        do{            $mrc = curl_multi_exec($mh,$active);        }while($mrc = CURLM_CALL_MULTI_PERFORM);    }}//关闭各个句柄curl_multi_remove_handle($mh,$ch1);curl_multi_remove_handle($mh,$ch2);curl_multi_close($mh);```