通常php都做http方式請求了,可以使用get or post方式接收引數,有些時候需要在shell命令下把php當作指令碼執行,比如定時任務。這就涉及到在shell命令下如何給php傳參的問題,通常有三種方式傳參。
一、使用$argv or $argc引數接收
複製****如下:
<?php
/*** 使用 $argc $argv 接受引數
*/echo "接收到個引數";
print_r($argv);執行
複製****如下:
[root@dell113 lee]# /usr/local/php/bin/php test.php
接收到1個引數array
([0] => test.php
)[root@dell113 lee]# /usr/local/php/bin/php test.php a b c d
接收到5個引數array
([0] => test.php
[1] => a
[2] => b
[3] => c
[4] => d
)[root@dell113 lee]#
二、使用getopt函式
複製****如下:
<?php
/*** 使用 getopt函式
*/$param_arr = getopt('a:b:');
print_r($param_arr);執行
複製****如下:
[root@dell113 lee]# /usr/local/php/bin/php test.php -a 345
array
([a] => 345
)[root@dell113 lee]# /usr/local/php/bin/php test.php -a 345 -b 12q3
array
([a] => 345
[b] => 12q3
)[root@dell113 lee]# /usr/local/php/bin/php test.php -a 345 -b 12q3 -e 3322ff
array
([a] => 345
[b] => 12q3
)三、提示使用者輸入
複製****如下:
<?php
/*** 提示使用者輸入,類似python
*/fwrite(stdout,'請輸入您的部落格名:');
echo '您輸入的資訊是:'.fgets(stdin);執行
複製****如下:
[root@dell113 lee]# /usr/local/php/bin/php test.php
請輸入您的部落格名:指令碼之家 www.jb51.net
您輸入的資訊是:指令碼之家 www.jb51.net
你也可以這麼幹,不讓使用者輸入空資訊
複製****如下:
<?php
/*** 提示使用者輸入,類似python
*/$fs = true;
doelse
$name = trim(fgets(stdin));
}while(!$name);
echo '您輸入的資訊是:'.$name."\r\n";
PHP命令列指令碼接收傳入引數的三種方式
通常php都做http方式請求了,可以使用get or post方式接收引數,有些時候需要在shell命令下把php當作指令碼執行,比如定時任務。這就涉及到在shell命令下如何給php傳參的問題,通常有三種方式傳參。一 使用 argv or argc引數接收 複製 如下 使用 argc argv ...
SQL 命令列指令碼
show databases use 資料庫名 select database create database 資料庫名 charset utf8 例 create database python charset utf8 drop database 資料庫名 例 drop database pyt...
linux 命令列指令碼
1.cd 到某個路徑 執行某個程式 cd home hil hilexe hmi2.ssh 命令 echo 123456 sudo s ssh 192.168.1.18123456是sudo的密碼 ssh中執行多個命令用 隔開 3.adb 命令 adb push home hil hilexe tr...