ホームページ  >  記事  >  バックエンド開発  >  PHP は、curl を通じて他のサーバーにリクエストを送信し、データを返します (コード例)

PHP は、curl を通じて他のサーバーにリクエストを送信し、データを返します (コード例)

不言
不言転載
2019-01-15 11:49:253430ブラウズ

この記事の内容は、PHP が他のサーバーにリクエストを送信し、curl を介してデータ (コード例) を返すことについてです。一定の参考値があります。必要な友人は参考にしてください。お役に立てれば幸いです。

多くの場合、Baidu のアクティブ プッシュなどのトークンなどのデータを取得するには、サードパーティ サーバーにリクエストする必要があります。では、PHP はどのようにしてサードパーティ サーバーにリクエストを行うのでしょうか。 ?これは、curl を通じて実現できます。

最初にリクエストされた URL を定義し、次に httpHeader ヘッダーを作成し、post を通じてリクエストを送信するためのパラメータを定義します。

curl を初期化します:

$url="URL地址";
//然后创建httpHeader的头:
$httpHeader=createHttpHeader();
//定义通过post方式发送请求的参数:
$curlPost="userId=".$userId."&name=".$nickName."&portraitUri=".$headImg;
//初始化curl:
$ch=curl_init();undefined

リクエストの送信:

curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_HTTPHEADER,$httpHeader);
curl_setopt($ch,CURLOPT_HEADER,false);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false);
curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch,CURLOPT_POSTFIELDS,$curlPost);
curl_setopt($ch,CURLOPT_TIMEOUT,30);
curl_setopt($ch,CURLOPT_DNS_USE_GLOBAL_CACHE,false);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);undefined

返されたデータの受信: $data=curl_exec ($ ch); Closecurl:curl_close($ch); このようにして、curl を介して POST リクエストが完了し、返されたデータが取得されます。

完全な PHP ソース コードは次のとおりです:

$url="请求的URL地址";
$httpHeader=createHttpHeader();
$curlPost="userId=".$userId."&name=".$nickName."&portraitUri=".$headImg;
$ch=curl_init();
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_HTTPHEADER,$httpHeader);
curl_setopt($ch,CURLOPT_HEADER,false);
curl_setopt($ch,CURLOPT_SSL_VERIFYPEER,false);
curl_setopt($ch,CURLOPT_POST,1);
curl_setopt($ch,CURLOPT_POSTFIELDS,$curlPost);
curl_setopt($ch,CURLOPT_TIMEOUT,30);
curl_setopt($ch,CURLOPT_DNS_USE_GLOBAL_CACHE,false);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
$data=curl_exec($ch);
curl_close($ch);undefined

以上がPHP は、curl を通じて他のサーバーにリクエストを送信し、データを返します (コード例)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はcnblogs.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。