php curl 의 깊이 있 는 해석

3598 단어 php컬.
curl 은 phop 에서 매우 강력 한 기능 이 라 고 할 수 있 습 니 다.모든 phop 프로그래머 들 은 curl 을 배우 고 익 혀 야 합 니 다.curl 을 사용 하기 전에 phop 을 확보 해 야 합 니 다.curl 확장 이 시작 되 었 습 니 다.1.curl 사용 예:우 리 는 심 천 지연 채용 에서 PHP 채용 의 첫 페이지 정보

$url='http://sou.zhaopin.com/jobs/searchresult.ashx?jl=%E6%B7%B1%E5%9C%B3&kw=php&sm=0&p=1';
//
$ch = curl_init();
// , URL
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//
curl_setopt($ch, CURLOPT_HEADER, 0);//
// curl
$output = curl_exec($ch);
//
if(curl_exec($ch) === false){
    die(curl_error($ch));
}
// curl
curl_close($ch);
header('Content-type: text/html; charset=utf-8');
echo $output;
를 수집 합 니 다.물론 우 리 는 돌아 온 데 이 터 를 사용 해 야 합 니 다.<정규 표현 식>처 리 를 통 해 우리 가 원 하 는 부분 을 찾 은 다음 에 당신 의 수요 에 따라 데 이 터 를 당신 사이트 에 채 워 야 합 니 다

//
preg_match_all('/<td class="Jobname">.*?<a\s*href="(.*?)"\starget="_blank">(.*?)<\/a>/s', $output, $title);
$title[1];//
$title[2];//
//
preg_match_all('/<td class="Companyname">.*?<a href="(.*?)"\starget="_blank">(.*?)<\/a>/s', $output, $company);
$company[1];//
$company[2];//
//
preg_match_all('/<td class="Companyaddress">\s*(.*?)\s*<\/td>/s', $output, $address);
$address[1];//
//
preg_match_all('/<td class="releasetime">\s*(.*?)\s*<\/td>/s', $output, $time);
$time[1];//
var_dump($time[1]);
2.자주 사용 하 는 기능 curl 의 핵심 은 각종 옵션 을 설정 하여 각종 기능 을 달성 하 는 것 입 니 다.여기 서 우 리 는 자주 사용 하 는 몇 가지 옵션 을 소개 한다.1.post 데이터

$post=array(
'uid'=>'test',
'pwd'=>'curl123'
);
curl_setopt($ch, CURLOPT_POST, 1);// POST
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($post));//POST
2.cookie

$savefile=dirname(__FILE__).'save.txt';
$getfile=dirname(__FILE__).'get.txt';
//
curl_setopt($ch, CURLOPT_COOKIEJAR, $savefile); //  
curl_setopt($ch, CURLOPT_COOKIEFILE, $getfile); //
3.IP 위조,출처

curl_setopt($ch, CURLOPT_HTTPHEADER, array('X-FORWARDED-FOR:8.8.8.8', 'CLIENT-IP:8.8.8.8'));// IP 
curl_setopt($ch, CURLOPT_REFERER, "http://www.baidu.com");//  
curlsetopt 옵션 이 완비 되 어 있 습 니 다.자세 한 내용 은 PHP 매 뉴 얼 참조:http://www.php.net/manual/zh/function.curl-setopt.php3.다 중 스 레 드 공식 예제

// cURL
$ch1 = curl_init();
$ch2 = curl_init();
// URL
curl_setopt($ch1, CURLOPT_URL, "http://www.example.com/");
curl_setopt($ch1, CURLOPT_HEADER, 0);
curl_setopt($ch2, CURLOPT_URL, "http://www.php.net/");
curl_setopt($ch2, CURLOPT_HEADER, 0);
// cURL
$mh = curl_multi_init();
// 2
curl_multi_add_handle($mh,$ch1);
curl_multi_add_handle($mh,$ch2);
$running=null;
//
do {
    usleep(10000);
    curl_multi_exec($mh,$running);
} while ($running > 0);
//
curl_multi_remove_handle($mh, $ch1);
curl_multi_remove_handle($mh, $ch2);
curl_multi_close($mh);

좋은 웹페이지 즐겨찾기