ホームページ  >  記事  >  バックエンド開発  >  PHP は、curl_init を使用して http リクエストを開始し、login_PHP チュートリアルをシミュレートします。

PHP は、curl_init を使用して http リクエストを開始し、login_PHP チュートリアルをシミュレートします。

WBOY
WBOYオリジナル
2016-07-13 16:57:031184ブラウズ

http リクエストには 2 つのタイプがあり、1 つは通常の http リクエスト ログイン、もう 1 つは別の https リクエスト ログインです。ここで、curl_init を使用して http および https ログインを実装する方法について詳しく説明します。

注:curl_init 関数を使用するには、この php 拡張機能をオンにする必要があります。

1. php.ini を開き、extension=php_curl.dll を有効にします
2. php.ini の extension_dir 値がどのディレクトリにあるかを確認し、php_curl.dll が存在するかどうかを確認します。存在しない場合は、php_curl.dll をダウンロードし、php ディレクトリ内の libeay32.dll と ssleay32.dll を c:/ にコピーします。ウィンドウズ/システム32。

httpリクエストを開始します

コードは次のとおりです コードをコピー

関数 _http_curl_post($url,$data)
{
$ch =curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 4); curl_setopt($ch, CURLOPT_TIMEOUT,4);                                             If($data){
curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, "value=".json_encode($data)); //リクエストパラメータをjson形式に変換します
}
curl_setopt($ch, CURLOPT_HEADER, false); $string =curl_exec($ch); カール_クローズ($ch); $string を返します。 }




メソッドの呼び出し



コードは次のとおりです

コードをコピー

$params = 配列(); $params['id'] = 1

$params['web_name'] = '良いスクリプト'; $params['web_url'] = 'http://www.bKjia.c0m/'; $params['web_miaoshu'] = 'スクリプトプログラミングの例'; $data = _curl_post($url,$params); $arr =json_decode($data);

http://www.bkjia.com/PHPjc/631544.html

http リクエストに加えて、https リクエストもあります。前回、Renren でワンクリック ログインを実行したとき、上記の関数を使用するとエラーが報告されました。このような問題が発生した場合は、次の方法を参照して解決してください。

httpsリクエストの例

www.bkjia.com
コードは次のとおりです コードをコピー

関数 _https_curl_post($url, $vars)
{
foreach($vars as $key=>$value)
{
$fields_string .= $key.'='.$value.'&' ; }
$fields_string = substr($fields_string,0,(strlen($fields_string)-1)); $ch =curl_init(); curl_setopt($ch, CURLOPT_URL,$url); curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2); curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); // この行は https で動作します
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1); curl_setopt($ch, CURLOPT_POST, count($vars) ); curl_setopt($ch, CURLOPT_POSTFIELDS, $fields_string); $data = カール_exec($ch); $データ = カール_exec($ch); カール_クローズ($ch);
If ($data)
{
$data を返します。 }
それ以外
{
false を返します
}
}










http://www.bkjia.com/PHPjc/631544.html

tru​​e
技術記事

http リクエストには 2 種類あり、1 つは通常の http リクエスト ログイン、もう 1 つは別の https リクエスト ログインです。curl_init を使用して htt を実装する方法を詳しく紹介します...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。