關(guān)于“極品php教程”的問題,小編就整理了【1】個相關(guān)介紹“極品php教程”的解答:
php多線程教程?PHP+shell實現(xiàn)多線程的方法
先寫個簡單的php代碼,這里為了讓腳本執(zhí)行時間更長,方便看效果,sleep一下,呵呵!先看下test.php的代碼:ls
PHP代碼:
for ($i=0;$i<10;$i++) {
echo $i;
sleep(10);
}
?>
在看下shell腳本的代碼,非常簡單
#!/bin/bash
for i in 1 2 3 4 5 6 7 8 9 10
do
/usr/bin/php -q /var/www/html/test.php &
done
注意到在請求php代碼的那行有一個&符號嗎,這個是關(guān)鍵,不加的話是不能進行多線程的,&表示講服務推送到后臺執(zhí)行,因此,在 shell的每次的循環(huán)中不必等php的代碼全部執(zhí)行完在請求下一個文件,而是同時進行的,這樣就實現(xiàn)了多線程,下面運行下shell看下效果,這里你將 看到10個test.php進程再跑,再利用linux的定時器,定時請求這個shell,在處理一些需要多線程的任務,例如,批量下載時,非常好用!
php中用WEB服務器實現(xiàn)多線程
假設(shè)我們現(xiàn)在運行的是a.php這個文件. 但是我在程序中又請求WEB服務器運行另一個b.php,那么這兩個文件將是同時執(zhí)行的.(PS: 一個鏈接請求發(fā)送之后, WEB服務器就會執(zhí)行它, 而不管客戶端是否已經(jīng)退出)
到此,以上就是小編對于“極品php教程”的問題就介紹到這了,希望介紹關(guān)于“極品php教程”的【1】點解答對大家有用。