本文目錄一覽:
- 1、如何用PHP語言執行linux自定義腳本?
- 2、如何用php作Linux自動執行腳本
- 3、如何在命令行下運行PHP腳本[帶參數]
- 4、如何在命令行下運行php腳本(寫出兩種方式)同時向php腳本傳遞參數
- 5、如何在命令行下運行PHP腳本
- 6、如何通過Linux命令行使用和運行PHP腳本
如何用PHP語言執行linux自定義腳本?
首先php進程的權限要足夠高,然後使用 exec 命令執行提交的linux腳本就可以了。
如何用php作Linux自動執行腳本
Linux中crontab是實現定時執行的指令,利用這個指令我們就可以定時執行某一個php文件,從而實現用PHP做Linux自動執行腳本。
如何用PHP作Linux自動執行腳本?
在安裝PHP的時候,會產生一個可執行文件,文件名為php.將它 copy 到 /usr/local/bin 下.在終端方式執行php程序:
php -q onlinnum.php
PHP 原本是應用在網頁應用的﹐因此它會送出 HTML 的HEADER﹐但是在此我們是要將 PHP 用作 Shell Script﹐”-q” 就是表示不要送 出 HEADER 的意思.你可以試試看不加上 -q 的顯示結果。此時你已經可以在終端方式下執行PHP 代碼了。 linux命令:cron daemon
這是一個系統中常駐的服務,功能在於執行例行性的工作,如每天一次或每月一 次檢查磁盤。cron daemon 會在每分鐘檢查一次排定的工作表(crontab),看看是否有要執行的指令,所有的輸出會以mail寄給用戶。
設置 crontab
命令:crontab -e
該命令呼叫vi編輯器來編輯執行的清單。例如
0 0 1,15 * * fsck /home
1 * * * * /home/myhome/printhello
每一行代表一項排定的工作,在指令前為排定的時間,總共有5個欄位,以空格間隔,由左到右依序如下:
————————–
分鐘 從00到 99
點鐘 從0到 24
日 從01到31
月 從01到12
星期 從01到07,代表星期一到星期日
*號表示”每” ,如每天執行,就在第三欄填*號
————————–
所以上例的兩項工作是:
每月1號和15號檢查/home 磁盤
每小時的第一分執行 /home/myhome/printhello 這個文件
查看crontab:crontab -l
刪除crontab:crontab -r
我們就知道該怎麼利用PHP和crontab命令作Linux自動執行腳本了。
還需要注意什麼問題?
如果php中有使用數據庫,如oracle等,執行腳本中還需export Oracle的環境設置。因為cron下的腳本執行的用戶都是在沒登陸狀態下執行的,少了很多系統里設置的環境變量的值,在連接數據庫的時候會出問題。
如何在命令行下運行PHP腳本[帶參數]
.php:?phpecho “Hello from the CLI”;?現在,試着在命令行提示符下運行這個程序,方法是調用CLI可執行文件並提供腳本的文件名:#php phphello.php輸出Hello from the CLI—————–使用標準的輸入和輸出你可以在自己的PHP腳本里使用這三個常量,以接受用戶的輸入,或者顯示處理和計算的結果。要更好地理解這一點,可以看看下面的腳本(列表A):列表A?php// ask for inputfwrite(STDOUT, “Enter your name: “);// get input$name = trim(fgets(STDIN));// write input backfwrite(STDOUT, “Hello, $name!”);?Look what happens when you run it:shell php hello.phpEnter your name: JoeHello, Joe!在這個腳本里,fwrite()函數首先會向標準的輸出設備寫一條消息,詢問用戶的姓名。然後它會把從標準輸入設備獲得的用戶輸入信息讀取到一個PHP變量里,並它把合併成為一個字符串。然後就用fwrite()把這個字符串打印輸出到標準的輸出設備上。—————–使用命令行自變量在命令行里輸入程序參數來更改其運行方式是很常見的做法。你也可以對CLI程序這樣做。PHP CLI帶有兩個特殊的變量,專門用來達到這個目的:一個是$argv變量,它通過命令行把傳遞給PHP腳本的參數保存為單獨的數組元素;另一個是$argc變量,它用來保存$argv數組裡元素的個數。shell php phptest.php chocolate 276 “killer tie, dude!”Array( [0] = test.php[1] = chocolate[2] = 276[3] = killer tie, dude!)正如你可以從輸出的結果看到的,傳遞給test.php的值會自動地作為數組元素出現在$argv里。要注意的是,$argvis的第一個自變量總是腳本自己的名稱。下面是一個更加複雜的例子(列表C):列表C代碼下面是其用法的示例:shell php phpbook.php 21/05/2005 7 single在這裡,腳本首先會檢查$argc,以確保自變量的數量符合要求。它然後會從$argv里提取出每一個自變量,把它們打印輸出到標準的輸出
如何在命令行下運行php腳本(寫出兩種方式)同時向php腳本傳遞參數
測試可用 :
?
?php
$options = getopt(“f:”);
var_dump($options);
?
php aaa.php -f “123456”
?
array(1) {
[“f”]=
string(5) “123456”
}
如何在命令行下運行PHP腳本
.php:?phpecho
“Hello
from
the
CLI”;?現在,試着在命令行提示符下運行這個程序,方法是調用CLI可執行文件並提供腳本的文件名:
#php
phphello.php
輸出Hello
from
the
CLI
—————–
使用標準的輸入和輸出
你可以在自己的PHP腳本里使用這三個常量,以接受用戶的輸入,或者顯示處理和計算的結果。要更好地理解這一點,可以看看下面的腳本(列表A):列表A?php//
ask
for
input
如何通過Linux命令行使用和運行PHP腳本
在 Linux 下執行 php 腳本時通常是可以使用以下命令:#/usr/local/php/bin/php test.php
為簡化輸入可把此php執行程序 copy 到系統命令目錄下:
#cp /usr/local/php/bin/php /usr/sbin/
驗證:輸入以下命令,如正確獲取 php 版本,說明操作成功。
#php -v
這樣,以後再執行PHP腳本時可直接採用以下輸入方式即可。
#php a.php
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/258680.html