PHP命令列指令碼接收傳入引數的三種方式
通常PHP都做http方式請求了,可以使用GET or POST方式接收引數,有些時候需要在shell命令下把PHP當作指令碼執行,比如定時任務。這就涉及到在shell命令下如何給php傳參的問題,通常有三種方式傳參。
一、使用$argv or $argc引數接收
<?php
/**
* 使用 $argc $argv 接受引數
*/
echo "接收到{$argc}個引數";
print_r($argv);
以下是測試的結果
二、使用getopt函式(推薦使用這種方法)
<?php
/**
* 使用 getopt函式
*/
$param_arr = getopt('a:b:');
print_r($param_arr);
三、提示使用者輸入
<?php
/**
* 提示使用者輸入,類似Python
*/
fwrite(STDOUT,'please input:');
echo 'your input is:'.fgets(STDIN);
使用者的輸入不能為空
<?php
/**
* 提示使用者輸入,類似Python
*/
$fs = true;
do{
if($fs){
fwrite(STDOUT,'請輸入您的部落格名:');
$fs = false;
}else{
fwrite(STDOUT,'抱歉,部落格名不能為空,請重新輸入您的部落格名:');
}
$name = trim(fgets(STDIN));
}while(!$name);
echo '您輸入的資訊是:'.$name."\r\n";
以上內容希望幫助到大家,更多PHP大廠PDF面試文件,PHP進階架構視訊資料,PHP精彩好文免費獲取可以關注公眾號:PHP開源社群,或者訪問:
「其他文章」
- 基於Nginx的負載均衡原理與實戰
- PHP控制反轉(IOC)和依賴注入(DI)
- 深入理解PHP7核心之Reference
- php中類的不定引數使用示例
- php單例模式的常見應用場景
- laravel 配置MySQL讀寫分離
- PHP的垃圾回收機制(建議收藏)
- 【shell指令碼】字串和陣列的使用
- PHP-FPM是什麼東東?
- PHP 編寫守護程序
- PHP命令列指令碼接收傳入引數的三種方式
- php專案中類的自動載入
- 複習下Linux去除重複項命令uniq
- 深入理解PHP核心:變數及資料型別
- Swoole協程與傳統fpm同步模式比較
- PHP中Session ID的實現原理
- 寫一手好SQL,該從哪裡入手最好?
- PHP命令列指令碼接收傳入引數的三種方式
- 使用 Shell 在多伺服器上批量操作
- PHP實現使用者異地登入提醒功能的方法