[精讚] [會員登入]
201

PHP cli 傳入參數

php cli (PHP命令列的傳入參數使用方法

此文完整連結 http://n.sfs.tw/10597

複製連結 PHP cli 傳入參數@新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2017-01-13 10:54:43 最後編修
2017-01-12 19:59:00 By 瘦河馬
 

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"
}

第一個就是執行程式本身,真餘分別是傳入的第1,2,3,4...個參數。

如果要檢查有沒有傳入參數,應該使用 empty 為佳:

if( empty($argv[1])){
  print "No parameter error, hint: ....";
  exit;
}


原文 2010-12-20 00:17:22

你可能感興趣的文章

PHP程式經驗 #2 -- print和echo的差異 常在寫php的人一定會想知道echo和print這兩個函數有什麼不一樣 驗證 1. 比較print 和echo 函式的執

[PHP] 好用的php常數 介紹PHP中 __DIR__, __FILE__, __FUNCTION__, __CLASS__, __METHOD__, __LINE__, __NAMESPACE__等常數

設定Google analytics API #3 -- 查詢範例 讓你的網站能夠存取你的Google analytics上面的資料

[PHP] 如何寫callback function 召回函數(回呼函數) PHP如何寫召回函數或回呼函數(callback function)?

[PHP]解決ksort新增的SORT_NATURAL|SORT_FLAG_CASE方法 php>=5.4中ksort函數多了SORT_NATURAL 和 SORT_FLAG_CASE 旗標,對舊版的PHP中要怎麼辦?

[PHP] preg_match 的貪婪和不貪婪比對 在php preg_match中預設是採用貪婪比對,太貪婪反而不符合需要,因此得採用「非貪婪比對」...

[CodeIgniter3] 解決無法上傳特定檔案(.sb2)的問題 上傳時出現The filetype you are attempting to upload is not allowed,要怎麼解決?

[PHP] 判斷程式是從CLI、本地網路或是網際網路端執行的方法 PHP利用IP判斷程式是從CLI、本地網路或是網際網路端執行的方法

[PHP] 命名空間 namespace及 use PHP >=5.3 開始支援命名空間:namespace

[CI3] 使用和修改日曆類別 calendar library CI3有一個日曆圖書館 library,可以快速的建立一個日曆,但是想修改讓他更棒

我有話要說


限制:留言最高字數1000字,超過部分會被截掉。 限制:未登入訪客,每則留言間隔需超過10分鐘,每日最多5則留言。

訪客留言

[無留言]

隨機好文

UTF-8 BOM (Byte Order Mark) 的問題 在 Michael Kaplan 那看到 Every character has a story #4: U+feff

如何在linux下執行java 原生的java應用程式可以使用簡單的方法在console下面寫出來,適合作簡單的應用

[Freebsd] 使用 ADSL 撥接上網 Freebsd上要使用 ADSL 撥接上網,該如何設定?

安裝SPHINX支援中文 新版本的 sphinx 和舊版不同,網路上很多範例和教學是不能用的。此文是安裝和設定方法分享

PHP for sphinx 函式庫安裝 PECL/sphinx PHP>= 5.2.2 已經能原生支援 sphinx,可是預設的沒有裝,我們得自己裝才能用