當前位置:首頁 » 編程語言 » linux運行php腳本

linux運行php腳本

發布時間: 2023-05-20 01:29:22

1. 如何使用linux的Crontab定時執行php腳本的方法

下面介紹Crontab的兩種方法。

一、在Crontab中使用PHP執行腳襪粗本

就像在Crontab中調用普通的shell腳本一樣(具體Crontab用法),使用PHP程序來調用PHP腳本。
每一小時執行myscript.php如下:
. 代碼如下:

# crontab -e
00 * * * * /usr/local/bin/php /home/john/myscript.php

/usr/local/bin/php為PHP程序的路徑。

二、在Crontab中使用URL執行腳本

如果你的PHP腳本可以通過URL觸發,你可以使用lynx或curl或wget來配置你的Crontab。
下面的例子是使用Lynx文本瀏覽器訪問URL來每小時執行PHP腳本。Lynx文本瀏覽器默認使用對話方式打開URL。但是,像下面的,我們在lynx命令行中使用-mp選項來把URL的輸出轉換來標准輸出。
. 代碼如下戚拍:

00 * * * * lynx -mp http://www.poluoluo.com/myscript.php

下面的例子是使用CURL訪問URL來每5分執行PHP腳本。Curl默認在標准輸出顯示輸出。使用」curl -o」選項,你也可以把腳本的輸出轉儲到臨時文件。
. 代碼如下:

*/5 * * * * /usr/bin/curl -o temp.txt http://www.poluoluo.com/myscript.php

下面的例子是使用WGET訪問URL來每10分執行PHP腳本。告仔鎮-q選項表示安靜模式。」-O temp.txt」表示輸出會發送到臨時文件。

2. 如何通過Linux命令行使用和運行PHP腳本

1.用php -q 文件名.php 方式把php程序當shell程序來用,
2.用php -s把自己的php程序顯示有語法高亮色彩的html源文件。這樣是不是很省心?
3.利用php的odbc功能可以在shell命令中對資料庫進行操作。
#0 6 * * * /usr/local/bin/php /home/web/do/index.php
4.查看擴展庫
/usr/local/php/bin/php -m
5.檢查php.ini配置是否正確
/usr/local/php/bin/php -v
6.讓php運行指定文件
php my_script.php
php -f my_script.php
7.在命令行直接運行 PHP 代碼。
php -r 『print_r(get_defined_constants());』
php -r 『phpinfo();』
8.用該參數,您可以指定一個放置 php.ini 文件的目錄,或者直接指定一個自定義的 INI 文件
php -c /custom/directory/custom-file.ini my_script.php
9.顯示除去了注釋和空格的源代碼。
php -w a.php
10.php -i
該命令行參數會調用 phpinfo() 函數,並列印出結果。

3. 如何使用Linux的Crontab定時執行PHP腳本的方法

*/1 * * * * /usr/local/php/bin/php /home/wwwroot/clewx/web/linux.php Crontab Dingdian op 14186

這是我伺服器上的crontab粘貼給你了。

1、*/1是代表每分鍾。

2、/usr/local/php/bin/php 是php腳本。意思就是拿PHP去執行,跟拿迅雷下載東西一個道理,都是需要指定一個東西去執行。

3、/home/wwwroot/clewx/web/linux.php 是php程序

4、Crontab Dingdian op 14186 是4個參數,因為我的程序是MVC的,所以執行的是Crontab模塊的Dingdian控制器的op方法,14186是一個參數

5、上linux.php代碼,直接使用$argv可以接收參數

$_GET['m']=$argv[1];
$_GET['c']=$argv[2];
$_GET['a']=$argv[3];
$_GET['id']=$argv[4];

4. 在Linux下以什麼方式或工具進行PHP開發好

這個就非常多了,作為一門廣泛使用的Web後端編程語言,PHP的應用范圍非常廣,小程序、命令行腳本、電子商務網站等都有深入涉及,開發軟體和工具自然非常多,Linux環境下,主要還是以輕量級的代碼(文本)編輯器為主,下面我簡單介紹4個非常不錯的LinuxPHP開發工具,感興趣的朋友可以嘗試一下:

visualstudiocode

這是一個非常受歡迎的代碼編輯器,微軟自主設計研發(良心產品),免費、開源、跨平台,目前支持多達幾十種編程語言,插件擴展豐富,編碼效率極高,只要你使用上,很快就會愛上這款工具,對於PHP開發來說,非常不錯,智能補全、代碼高亮、語法提示等功能都能很好兼容,簡單易學,非常容易掌握:

sublimetext

這也是一個比較受歡迎的代碼編輯器,支持跨平台,輕便靈活,運行速度快,文本編輯器功能強大,和visualstudiocode類似,sublimetext也支持多達幾十種編程語言,自動補全、語法提示、錯誤檢查等功能非常不錯,對於編寫php來說,也是一個高效簡潔的開發工具:

gedit

這是LinuxGNOME桌面一個非常不錯的文本編輯器(和Windows系統下的記事本非常相似),採用GTK+編寫而成,簡單易用,具有良好的語法巧毀高亮,支持代碼縮進、多窗口編輯、文本搜索替換,對於php編輯來說,也是一個不錯的選擇,野輪但總體功能相對於vscode和sublimetext來說,遜色不少:

vim

這是Linux系統下一個普遍使用的文本編輯器,如果你熟悉Linux系統,應該不陌生,非常好用,免費、開源,插件擴展豐富,和各種編程語言都能混搭,而且效果良好,如果你喜歡輕便靈活的感覺,開發簡單的php腳本,可以使用一下這個工具,非常不錯,初學入門可能不是很適應,但熟悉後,地區是一個不錯的編輯和開發工具:

當然,除了以上4個代碼或文本編輯器,還有許多軟體也支持PHP開發,像比較專業、智能的phpstorm,支持跨平台,但對Linux系統下開發來說,有些厚重,你也可以搭建一個samba伺服器,在Windows下開發,在Linux上執行,效率可能更高,網上也有相關教程和資料,介紹的非常詳細,感興趣的孝脊備話,可以搜一下,希望以上分享的內容能對你有所幫助吧,也歡迎大家評論、留言進行補充。

5. linux如何用shell運行一個php腳本

在 Linux 下執行 php 腳本時通常是使用以下命令(視php安裝路徑而定):

/usr/local/php/bin/phptest.php


另外,為簡化輸入可把此php執行程序 到系統命令目錄下:

cp/usr/local/php/bin/php/usr/sbin/


驗證:輸入以下命令,如正確獲取 php 版本,說明操作成功。

php-v

參考:

http://www.360doc.com/content/10/1124/15/4330887_72030254.shtml

6. 怎麼在linux的CLI下運行php文件

在Linux的CLI(命令行界面)下運行PHP文件,可段旁帆以通過以下步驟進行:
打開終端,進入PHP文件所在的目錄啟穗。
輸入以下命令:
php filename.php
其中,filename.php是要運行的PHP文件名。
按下回車鍵,即可運行PHP文件。
注意,要在CLI下運行PHP文件,需要先安裝PHP解釋器。如果您的系統中沒有安裝PHP,可以通過以下命令進行安裝:
sudo apt-get install php
這個命令會使用apt-get包管理器自動安裝PHP解握雹釋器。如果您的系統中使用的是其他包管理器,可以根據實際情況進行相應的安裝。

7. 伺服器linux環境運行php,如何配置

單機下Linux下部署PHP環境

說白了就是在Linux系統上安裝apche或者nginx和mysql資料庫以及php運行環境

這些都可以在網上單獨下載安裝包去安裝

但是需要猜肢輪自己去一個一個下載安裝設置調試等

傻瓜式的有穗信lnmp和lamp一鍵安裝包

大多是基於命令行模式

如果是需要圖形化的

則飢胡推薦寶塔和wdcp等圖形化操作面板

幾乎是按照Windows的那種點幾下安裝

通過直接上傳或者ftp把php代碼傳到伺服器上

域名解析好即可訪問了

另外現在推薦php7.2以上+mysql5.7或者8.0組合

效率比老版本又更上一層樓

8. linux執行php腳本執行沒結果

定時執行crontab使用方法詳解使用方式:crontab [ -u user ] filecrontab [ -u user ] { -l | -r | -e }說明:crontab 是用來讓使用者在固定時間或固定間隔執行程式之用,換句話說,也就是類似使用者的定時執行crontab使用方法詳解
使用方式:
crontab [ -u user ] filecrontab [ -u user ] { -l | -r | -e }
說明:
crontab 是用來讓使用者在固定時間或固定間隔執行程式之用,換句話說,也就是類似使用者的時程表。-u user 是指設定指定 user 的時程表,這個前提是你必須要有其許可權(比如說是 root)才能夠指定他人的時程表。如果不使用 -u user 的話,就是表示設定自己的時程表。
參數:
-e:執行文字編輯器來設定時程表,內定的文字編輯器是 VI,如果你想用別的文字編輯器,則請先設定 VISUAL 環境變數來指定使用那個文字編輯器(比如說 setenv VISUAL joe)
-r:刪除目前的時程表
-l:列出目前的時程表
時程表的格式如下:
f1 f2 f3 f4 f5 program
其中 f1 是表示分鍾,f2 表示小時,f3 表示一個月份中的第幾日,f4 表示月份,f5 表示一個星期中的第幾天。program 表示要執行的程式。
當 f1 為 * 時表示每分鍾都要執行 program,f2 為 * 時表示每小時都要執行程式,其餘類推
當 f1 為 a-b 時表示從第 a 分鍾到第 b 分鍾這段時間內要執行,f2 為 a-b 時表示從第 a 到第 b 小時都要執行,其餘類推
當 f1 為 */n 時表示每 n 分鍾個時間間隔執行一次,f2 為 */n 表示每 n 小時個時間間隔執行一次,其餘類推
當 f1 為 a, b, c,... 時表示第 a, b, c,... 分鍾要執行,f2 為 a, b, c,... 時表示第 a, b, c...個小時要執行,其餘類推
使用者也可以將所有的設定先存放在檔案 file 中,用 crontab file 的方式來設定時程表。
例子:
每月每天每小時的第 0 分鍾執行一次 /bin/ls:
0 7 * * * /bin/ls
在 12 月內, 每天的早上 6 點到 12 點中,每隔 20 分鍾執行一次 /usr/bin/backup:
0 6-12/3 * 12 * /usr/bin/backup
周一到周五每天下午 5:00 寄一封信給 [email protected]:
0 17 * * 1-5 mail -s \"hi\" [email protected] < /tmp/maildata
每月每天的午夜 0 點 20 分, 2 點 20 分, 4 點 20 分....執行 echo \"haha\"
20 0-23/2 * * * echo \"haha\"
注意:
當程式在你所指定的時間執行後,系統會寄一封信給你,顯示該程式執行的內容,若是你不希望收到這樣的信,請在每一行空一格之後加上 > /dev/null 2>&1 即可。
crontab 基本上有兩種建立例行性命令的方式:
一種是針對所有使用者,可以藉由 crontab -e 的指令來下達工作排程;
另一種是針對系統管理員,你可以直接修改 /etc/crontab 這個文件,來直接定時執行。

假如你需要在每天的正午 12:00 發一封信給你自己,
#crontab -e
進入 vi 的編輯畫面來編輯你的例行性命令,輸入如下語句
0 12 * * * mail [email protected] < /home/cheney/test.txt

以上有5個數字,分別代表的意思是:
分(0-59)
小時(0-23)
日期(1-31)
月份(1-12)
周(0-6)
另外,如果是[ * ]的時候,代表所有數字都適用的意思。

所以,以上的語句就是不論何月、何日、星期幾的 12 點 0 分時,執行 mail [email protected] < /home/cheney/test.txt 這個命令。

例1:
給你朋友發郵件,5月1號23:59時發送,使用:
# crontab -e 59 23 1 5 * mail [email protected] < /home/cheney/lover.txt

例2:
每隔6分鍾檢查相關文件,使用:
# crontab -e */6 * * * * /home/cheney/test.sh
刪除例行性命令:
# crontab -r 就刪除了
cron
在 Linux 中,任務可以被配置在指定的時間段、指定的日期、或系統平均載量低於指定的數量時自動運行。紅帽企業 Linux 預配置了對重要系統任務的運行,以便使系統能夠時時被更新。譬如,被 locate 命令使用的 slocate 資料庫每日都被更新。系統管理員可使用自動化的任務來執行定期備份、監控系統、運行定製腳本等等。
紅帽企業 Linux 隨帶幾個自動化任務的工具:cron、at、和 batch。

cron 是一個可以用來根據時間、日期、月份、星期的組合來調度對重復任務的執行的守護進程。
cron 假定系統持續運行。如果當某任務被調度時系統不在運行,該任務就不會被執行。
要使用 cron 服務,你必須安裝了 vixie-cron RPM 軟體包,而且必須在運行 crond 服務。要判定該軟體包是否已安裝,使用 rpm -q vixie-cron 命令。要判定該服務是否在運行,使用 /sbin/service crond status 命令。
配置 cron 任務
cron 的主配置文件是 /etc/crontab,它包括下面幾行:
SHELL=/bin/bash PATH=/sbin:/bin:/usr/sbin:/usr/bin MAILTO=root HOME=/ # run-parts 01 * * * * root run-parts /etc/cron.hourly 02 4 * * * root run-parts /etc/cron.daily 22 4 * * 0 root run-parts /etc/cron.weekly 42 4 1 * * root run-parts /etc/cron.monthly
前四行是用來配置 cron 任務運行環境的變數。SHELL 變數的值告訴系統要使用哪個 shell 環境(在這個例子里是 bash shell);PATH 變數定義用來執行命令的路徑。cron 任務的輸出被郵寄給 MAILTO 變數定義的用戶名。如果 MAILTO 變數被定義為空白字元串(MAILTO=""),電子郵件就不會被寄出。HOME 變數可以用來設置在執行命令或腳本時使用的主目錄。
/etc/crontab 文件中的每一行都代表一項任務,它的格式是:
minute hour day month dayofweek command

minute — 分鍾,從 0 到 59 之間的任何整數
hour — 小時,從 0 到 23 之間的任何整數
day — 日期,從 1 到 31 之間的任何整數(如果指定了月份,必須是該月份的有效日期)
month — 月份,從 1 到 12 之間的任何整數(或使用月份的英文簡寫如 jan、feb 等等)
dayofweek — 星期,從 0 到 7 之間的任何整數,這里的 0 或 7 代表星期日(或使用星期的英文簡寫如 sun、mon 等等)
command — 要執行的命令(命令可以是 ls /proc >> /tmp/proc 之類的命令,也可以是執行你自行編寫的腳本的命令。)
在以上任何值中,星號(*)可以用來代表所有有效的值。譬如,月份值中的星號意味著在滿足其它制約條件後每月都執行該命令。
整數間的短線(-)指定一個整數范圍。譬如,1-4 意味著整數 1、2、3、4。
用逗號(,)隔開的一系列值指定一個列表。譬如,3, 4, 6, 8 標明這四個指定的整數。
正斜線(/)可以用來指定間隔頻率。在范圍後加上 /<integer> 意味著在范圍內可以跳過 integer。譬如,0-59/2 可以用來在分鍾欄位定義每兩分鍾。間隔頻率值還可以和星號一起使用。例如,*/3 的值可以用在月份欄位中表示每三個月運行一次任務。
開頭為井號(#)的行是注釋,不會被處理。
如你在 /etc/crontab 文件中所見,它使用 run-parts 腳本來執行/etc/cron.hourly、/etc/cron.daily、/etc/cron.weekly 和 /etc/cron.monthly 目錄中的腳本,這些腳本被相應地每小時、每日、每周、或每月執行。這些目錄中的文件應該是 shell 腳本。
如果某 cron 任務需要根據調度來執行,而不是每小時、每日、每周、或每月地執行,它可以被添加到 /etc/cron.d 目錄中。該目錄中的所有文件使用和 /etc/crontab 中一樣的語法。
# record the memory usage of the system every monday # at 3:30AM in the file /tmp/meminfo 30 3 * * mon cat /proc/meminfo >> /tmp/meminfo # run custom script the first day of every month at 4:10AM 10 4 1 * * /root/scripts/backup.sh
例 37-1. crontab 的例子
根用戶以外的用戶可以使用 crontab 工具來配置 cron 任務。所有用戶定義的 crontab 都被保存在 /var/spool/cron 目錄中,並使用創建它們的用戶身份來執行。要以某用戶身份創建一個 crontab 項目,登錄為該用戶,然後鍵入 crontab -e命令,使用由 VISUAL 或 EDITOR 環境變數指定的編輯器來編輯該用戶的 crontab。該文件使用的格式和 /etc/crontab 相同。當對 crontab 所做的改變被保存後,該 crontab 文件就會根據該用戶名被保存,並寫入文件 /var/spool/cron/username中。
cron 守護進程每分鍾都檢查 /etc/crontab 文件、etc/cron.d/ 目錄、以及 /var/spool/cron 目錄中的改變。如果發現了改變,它們就會被載入內存。這樣,當某個 crontab 文件改變後就不必重新啟動守護進程了。
控制對 cron 的使用
/etc/cron.allow 和 /etc/cron.deny 文件被用來限制對 cron 的使用。這兩個使用控制文件的格式都是每行一個用戶。兩個文件都不允許空格。如果使用控制文件被修改了,cron 守護進程(crond)不必被重啟。使用控制文件在每次用戶添加或刪除一項 cron 任務時都會被讀取。
無論使用控制文件中的規定如何,根用戶都總是可以使用 cron。
如果 cron.allow 文件存在,只有其中列出的用戶才被允許使用 cron,並且 cron.deny 文件會被忽略。
如果 cron.allow 文件不存在,所有在 cron.deny 中列出的用戶都被禁止使用 cron。
啟動和停止服務

要啟動 cron 服務,使用 /sbin/service crond start 命令。要停止該服務,使用 /sbin/service crond stop 命令。推薦你在引導時啟動該服務。
本篇文章來源於:開發學院 http://e.codepub.com 原文鏈接: http://e.codepub.com/2010/0723/24498.php

熱點內容
java深入學習 發布:2025-07-15 10:13:50 瀏覽:533
linux應用程序開發pdf 發布:2025-07-15 10:11:37 瀏覽:911
解壓冷知識 發布:2025-07-15 10:11:35 瀏覽:78
outlook郵件的伺服器是什麼 發布:2025-07-15 09:45:59 瀏覽:482
如何安排資產配置 發布:2025-07-15 09:33:24 瀏覽:906
更新傳送伺服器目的地址失敗 發布:2025-07-15 09:27:05 瀏覽:484
c語言else的用法 發布:2025-07-15 09:19:54 瀏覽:119
tnt蘋果核安卓怎麼加好友 發布:2025-07-15 09:05:15 瀏覽:239
年輕人運行內存為什麼比安卓好 發布:2025-07-15 08:52:03 瀏覽:515
怎麼配置組策略 發布:2025-07-15 08:52:02 瀏覽:246