溫馨提示×

溫馨提示×

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

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

使用cli(命令行)方式執(zhí)行php程序進行高效的程序調(diào)試

發(fā)布時間:2020-07-07 22:47:53 來源:網(wǎng)絡 閱讀:3134 作者:huangyanxiong 欄目:web開發(fā)

php_cli模式簡介

php-cli是php Command Line Interface的簡稱,如同它名字的意思,就是php在命令行運行的接口,區(qū)別于在Web服務器上運行的php環(huán)境(php-cgi, isapi等) 也就是說,php不單可以寫前臺網(wǎng)頁,它還可以用來寫后臺的程序。 PHP的CLI shell腳本適用于所有的PHP優(yōu)勢,使創(chuàng)建要么支持腳本或系統(tǒng)甚至與GUI應用程序的服務端!——注:windows和linux下都支持php_cli模式

PHP-cli應用場景:

1.多線程應用
這方面的好處,引用鳥哥的話:

優(yōu)點:
1. 使用多進程, 子進程結束以后, 內(nèi)核會負責回收資源
2. 使用多進程,子進程異常退出不會導致整個進程Thread退出. 父進程還有機會重建流程.
3. 一個常駐主進程, 只負責任務分發(fā), 邏輯更清楚.

php的多線程—沒錯就是php多線程應用,雖然大家都普遍認為php沒有多線程(curl屬于模擬多線程而不是真實的),但是在php_cli模式下的php徹底的是屬于多線程。這個時候php屬于linux的一個守護進程。 你就會發(fā)現(xiàn)這個程序執(zhí)行的很快,php多線程執(zhí)行的優(yōu)勢被徹底表現(xiàn)出來了.

備注:這種多線程方式不是很成熟,不適合大規(guī)模的生成應用,偶爾使用還是可以的

2.定時執(zhí)行php程序

利用linux的cron方式

3.開發(fā)桌面程序

你可以做您的Windows或Linux中使用PHP的圖形用戶界面(GUI)應用!所有你需要的是PHP的命令行接口和一包GTK。這將允許建立真正的便攜式圖形用戶界面應用程序,并且不需要學習別的。

4.編寫PHP的shell腳本  


使用cli(命令行)模式執(zhí)行php程序,方便調(diào)試php程序,首先把php的執(zhí)行文件加入的bash的環(huán)境

vi /etc/profile  #找到第54行左右
PATH=$PATH:/usr/local/php/bin  #加上這個語句:注意自己的php路徑
export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL  #在這句前面加
#保存后使它生效
source /etc/profile
#測試
<?php
    echo 'www.myfreax.com';
?>
#錯誤的程序測試
<?php
echo 'www.myfreax.comn'
echo QQ群:151327334
?>
將會出現(xiàn)提示

記得上次,我的朋友的網(wǎng)站在Windows下一切正常輸出,但是到Linux服務器,打開瀏覽器后,什么也沒有輸出,一片空白;然后我叫他關閉selinux iptables試試,但還是老樣子,把我的朋友搞到愁死,找不到原因,然后他干脆把服務器給我搞了,經(jīng)過一番研究后,在Linux的終端里執(zhí)行

php index.php

馬上提示哪里出錯了,原來我的朋友使用短標簽,導致不能被正解釋php,他的程序中有短標簽還有長標簽,搞得亂亂的,我問他你是不是使用短標簽的服務器環(huán)境,而他說自己在Windows使用apmserver,什么都有改過,應該是apmserver開啟短標簽了


但是這里有個問題:為什么php沒有把錯誤輸出到瀏覽器

向AI問一下細節(jié)

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

AI