[精讚] [會員登入]
2260

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>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"?解決方法

使用Yahoo OAuth2 1/2 使用Yahoo OAuth2來認證我的網站

[PHP] 取得檔名和路徑:basename, dirname 由絕對路徑取的路徑及檔名的方法

作業上傳程式 提供學生作業上傳的程式

[PHP] CodeIgniter 3+pure+smarty安裝及環境設置2/2 PHP framework CodeIgniter 3+ pure CSS +smarty Template Engine的整合#2

[PHP] 處理mail 函式的標題中文字亂碼 PHP的mail函式若標題有中文字得先處理過,否則收信者會看到亂碼

隨機好文

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

[Freebsd] 定時測試 ADSL 是否斷線並重連 中華電信 ADSL 雖有固定 ip,可是他卻會不定時「斷線」, 使用以下的 方法可以定時測試是否斷線,以及重新撥接。

看懂DSUB DVI HDMI USB等各式影音接頭 看懂DSUB DVI HDMI等各式影音接頭

[NetBeans] 使用git複製別人的專案 NetBeans使用git複製別人的專案及版本控制

最值得學的電腦技能 什麼是最值得學的電腦技能?程式設計?美工繪圖?系統網路?還是…? 都不是!個人覺得一個最值得學的電腦技能就