ホームページ  >  記事  >  バックエンド開発  >  PHPのcurlはWebページの応答データをキャプチャします

PHPのcurlはWebページの応答データをキャプチャします

小云云
小云云オリジナル
2018-03-21 14:08:002222ブラウズ

この記事では主に、curl を使用して PHP で Web ページの応答データをキャプチャする方法について説明します。お役に立てれば幸いです。

<?php
namespace app\index\model;
use think\Model;

class httpPost extends Model{
 /**
 * POST 请求 抓取数据

 * @param string $url


 * @param array $param


 * @return string content


 */
	public function httpPost($url, $param, $cookie_file) {


	   $oCurl = curl_init ();


	   if (stripos ( $url, "https://" ) !== FALSE) {


	      curl_setopt ( $oCurl, CURLOPT_SSL_VERIFYPEER, FALSE );


	      curl_setopt ( $oCurl, CURLOPT_SSL_VERIFYHOST, false );


	   }


	   if (is_string ( $param )) {


	      $strPOST = $param;


	   } else {


	      $aPOST = array ();


	      foreach ( $param as $key => $val ) {


	         $aPOST [] = $key . "=" . urlencode ( $val );


	      }


	      $strPOST = join ( "&", $aPOST );


	   }


	   curl_setopt ( $oCurl, CURLOPT_URL, $url );


	   curl_setopt ( $oCurl, CURLOPT_RETURNTRANSFER, 1 );


	   curl_setopt ( $oCurl, CURLOPT_POST, true );


	   curl_setopt ( $oCurl, CURLOPT_POSTFIELDS, $strPOST );
	   
	   
	 //   curl_setopt($oCurl, CURLOPT_SSL_VERIFYPEER, false);// 过滤htpts
	 //   curl_setopt($oCurl, CURLOPT_SSL_VERIFYHOST, false);// 过滤htpts
	 //   $UserAgent = &#39;Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.0; SLCC1; .NET CLR 2.0.50727; .NET CLR 3.0.04506; .NET CLR 3.5.21022; .NET CLR 1.0.3705; .NET CLR 1.1.4322)&#39;;
		// curl_setopt($oCurl, CURLOPT_USERAGENT, $UserAgent); // 使用代理
		// //
		// curl_setopt($oCurl, CURLOPT_HEADER, false);


		// curl_setopt($oCurl, CURLOPT_HEADER, 0);
     	
  		curl_setopt($oCurl, CURLOPT_COOKIEFILE, $cookie_file);


	   $sContent = curl_exec ( $oCurl );


	   $aStatus = curl_getinfo ( $oCurl );


	   curl_close ( $oCurl );


	   if (intval ( $aStatus ["http_code"] ) == 200) {


	      return $sContent;


	   } else {

	      return false;

	   }

	}
}

関連する推奨事項:

phpでCURLリクエストヘッダーとレスポンスヘッダーを取得する方法

PHP WebクローラーのCURLの詳細な説明

phpでCURLリクエストヘッダーとレスポンスヘッダーを取得する

以上がPHPのcurlはWebページの応答データをキャプチャしますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。