PHP有時還是得用 php-cli 來處理一些事情,例如排程、測試等等
如果這時要能接收 php的傳入參數,只需要處理 php 的特殊變數 $argv 就可以輕鬆處理了。
test.php
<?php var_dump($argv); exit; ?>
執行和結果
$ php test.php p1 p2 p3 p4
array(5) {
[0]=>
string(15) "test.php"
[1]=>
string(2) "p1"
[2]=>
string(2) "p2"
[3]=>
string(2) "p3"
[4]=>
string(2) "p4"
}
array(5) {
[0]=>
string(15) "test.php"
[1]=>
string(2) "p1"
[2]=>
string(2) "p2"
[3]=>
string(2) "p3"
[4]=>
string(2) "p4"
}
第一個就是執行程式本身,真餘分別是傳入的第1,2,3,4...個參數。
如果要檢查有沒有傳入參數,應該使用 empty 為佳:
if( empty($argv[1])){ print "No parameter error, hint: ...."; exit; }
原文 2010-12-20 00:17:22