- 相關(guān)推薦
PHP擴展程序講解
PHP是一種通用開源腳本語言。語法吸收了C語言、Java和Perl的特點,利于學(xué)習(xí),使用廣泛,主要適用于Web開發(fā)領(lǐng)域。我們?yōu)榇蠹沂占砹岁P(guān)于PHP擴展程序,以方便大家參考。PHP命令行程序?qū)崿F(xiàn)守護進程化有2種方法:
一 、使用nohup 復(fù)制代碼 代碼如下:
nohup php myprog.php > log.txt &
這里就實現(xiàn)了守護進程化。單獨執(zhí)行 php myprog.php,當(dāng)按下ctrl+c時就會中斷程序執(zhí)行,會kill當(dāng)前進程以及子進程。php myprog.php &,這樣執(zhí)行程序雖然也是轉(zhuǎn)為后臺運行,實際上是依賴終端的,當(dāng)用戶退出終端時進程就會被殺掉。
二、使用PHP代碼來實現(xiàn)1
30function daemonize()
{
$pid = pcntl_fork();
if ($pid == -1)
{
die("fork(1) failed!n");
}
elseif ($pid > 0)
{
//讓由用戶啟動的進程退出
exit(0);
}
//建立一個有別于終端的新session以脫離終端
posix_setsid();
$pid = pcntl_fork();
if ($pid == -1)
{
die("fork(2) failed!n");
}
elseif ($pid > 0)
{
//父進程退出, 剩下子進程成為最終的獨立進程
exit(0);
}
}
daemonize();
sleep(1000);
用上面代碼即可實現(xiàn)守護進程化,當(dāng)你的PHP程序需要轉(zhuǎn)為后臺運行時,只需要調(diào)用一次封裝好的函數(shù)daemonize()即可。
注:這里沒有實現(xiàn)標(biāo)準輸入輸出的重定向。
【PHP擴展程序講解】相關(guān)文章:
PHP網(wǎng)絡(luò)操作函數(shù)講解07-23
PHP排序算法類講解07-18
怎么在yaf框架增加php擴展框架07-24
php程序員11-01
linux下用phpize給PHP動態(tài)添加擴展07-25
無需重新編譯php加入ftp擴展的方法09-04
PHP程序性能優(yōu)化的方法10-29