[精讚] [會員登入]
2338

PHP cli 傳入參數

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

分享此文連結 //n.sfs.tw/10597

分享連結 PHP cli 傳入參數@新精讚
(文章歡迎轉載,務必尊重版權註明連結來源)
2019-10-25 09:36:36 最後編修
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

END

你可能感興趣的文章

[PHP] 使用browscap檢查瀏覽器版本 使用PHP內建函數browscap檢查瀏覽器版本

PHP 移除陣列中的元素 要移除陣列中的其中一項元素

[PHP>7.3] switch中的 Did you mean to use "continue 2"? 除錯 這近更新 PHP到7.3版以後,出現這樣的錯:targeting switch is equivalent to "break". Did you mean to use "continue 2"?解決方法

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

[CodeIgniter 3] 修改或插入資料時遇到函數的處理 CI3 中要新增或修改的資料中如果有 now()這類的函數,要怎麼處理?

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

隨機好文

為什麼要買長達二十年的保單? 為什麼要買長達二十年的保單?找一個可以說服我買二十年保單的理由。

[HP DL380G7] 生效啟動第3,4片網卡/開啟或關閉內建的網卡 HP DL380G7 預設第3,4片網卡裝完系統後找不到,難道是壞了?要怎麼辦?

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

[Windows7] 移除IE10及移除IE11 Windows7 不得已的情況要移除IE11或IE10怎麼做?

為什麼要重造輪子? 什麼輪子?造什麼輪子?我為什麼要重造輪子?