本文實例講述了PHP+shell實現多線程的方法。分享給大家供大家參考。具體如下:
這裡介紹如何借助shell腳本實現多線程。
先寫個簡單的php代碼,這裡為了讓腳本執行時間更長,方便看效果,sleep一下,呵呵!先看下test.php的代碼:
PHP代碼:
<?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代碼的那行有一個&符號嗎,這個是關鍵,不加的話是不能進行多線程的,&表示講服務推送到後台執行,因此,在 shell的每次的循環中不必等php的代碼全部執行完在請求下一個文件,而是同時進行的,這樣就實現了多線程,下面運行下shell看下效果,這裡你將 看到10個test.php進程再跑,再利用linux的定時器,定時請求這個shell,在處理一些需要多線程的任務,例如,批量下載時,非常好用!
希望本文所述對大家的php程序設計有所幫助。