91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PHP中實現多線程異步請求的方法有哪些

發布時間:2021-01-16 11:23:41 來源:億速云 閱讀:247 作者:Leah 欄目:開發技術

這篇文章將為大家詳細講解有關PHP中實現多線程異步請求的方法有哪些,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

1、用CURL實現一步請求

CURL擴展是我們在開發過程中最常用的一種方法,他是一個強大的HTTP命令行工具,可以模擬POST/GET等HTTP請求,然后得到和提取數據,顯示在"標準輸出"(stdout)上面。

示例:

復制代碼 代碼如下:


<?php
$cl = curl_init();
$curl_opt = array(CURLOPT_URL, 'http://www.uncletoo.com/demo.php',
CURLOPT_RETURNTRANSFER, 1,
CURLOPT_TIMEOUT, 1,);
curl_setopt_array($cl, $curl_opt);
curl_exec($ch);
curl_close($ch);
?>


由于CUROPT_TIMEOUT屬性最小值為1,這就意味著在客戶端必須等待1秒,這也是使用CURL方法的缺點

2、用popen()函數實現異步請求

語法格式:popen(command,mode)

示例:

復制代碼 代碼如下:


<?php
$file = popen("/bin/ls","r");
//這里是要執行的代碼
//...
pclose($file);
?>


popen()函數直接打開一個指向進程的管道,速度快,即時相應。但是這個函數是單項的,要么讀要么寫,而且如果并發數較大,則會產生大量進程,給服務器造成負擔。

另外,如同示例中一樣,程序結束后一定要用pclose()來關閉。

3、用fscokopen()函數實現異步請求

我們在平時開發郵件發送功能等socket編程時,都會用到這個函數,在使用這個函數之前,我們要在PHP.ini 中開啟 allow_url_fopen 選項,另外在變成時,我們還要自己手動拼接出header部分。

示例:

復制代碼 代碼如下:


$fp = fsockopen("www.uncletoo.com/demo.php", 80, $errno, $errstr, 30);
if (!$fp) {
echo "$errstr ($errno)<br />\n";
} else {
$out = "GET /index.php / HTTP/1.1\r\n";
$out .= "Host: www.uncletoo.com\r\n";
$out .= "Connection: Close\r\n\r\n";

fwrite($fp, $out);
/*這里忽略執行結果
*測試時可以打開
while (!feof($fp)) {
echo fgets($fp, 128);
}*/
fclose($fp);
}

關于PHP中實現多線程異步請求的方法有哪些就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

抚远县| 满城县| 横峰县| 眉山市| 枣阳市| 维西| 当阳市| 张掖市| 平舆县| 花莲县| 大丰市| 博兴县| 北海市| 元阳县| 子长县| 翼城县| 敦化市| 东莞市| 和硕县| 嘉峪关市| 梅河口市| 遂昌县| 长治市| 九寨沟县| 泰安市| 长泰县| 东宁县| 兖州市| 盘锦市| 甘谷县| 乐昌市| 饶阳县| 新野县| 上栗县| 叶城县| 利辛县| 丘北县| 福海县| 潜山县| 武汉市| 冷水江市|