Heim  >  Artikel  >  Backend-Entwicklung  >  So übergeben Sie Parameter an PHP unter dem Shell-Befehl

So übergeben Sie Parameter an PHP unter dem Shell-Befehl

伊谢尔伦
伊谢尔伦Original
2017-06-26 14:34:252693Durchsuche

Normalerweise stellt PHP HTTP-Anfragen und Sie können GET oder POST verwenden, um Parameter zu empfangen. Manchmal müssen Sie PHP als Skript unter einem Shell-Befehl ausführen, beispielsweise als geplante Aufgabe. Dabei geht es um die Frage, wie Parameter unter dem Shell-Befehl an PHP übergeben werden. Normalerweise gibt es drei Möglichkeiten, Parameter zu übergeben.

1. Verwenden Sie den Parameter $argv oder $argc, um

<?php
/**
 * 使用 $argc $argv 接受参数
 */
 echo "接收到{$argc}个参数";
print_r($argv);

Execute

[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]#

2 zu erhalten. Verwenden Sie getoptFunktion

<?php
/**
 * 使用 getopt函数
 */
 
$param_arr = getopt(&#39;a:b:&#39;);
print_r($param_arr);

Ausführung

[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
)

3. Fordern Sie den Benutzer zur Eingabe von auf

<?php
/**
 * 提示用户输入,类似Python
 */
fwrite(STDOUT,&#39;请输入您的博客名:&#39;);
echo &#39;您输入的信息是:&#39;.fgets(STDIN);

Ausführen

[root@DELL113 lee]# /usr/local/php/bin/php test.php

Bitte geben Sie Ihren Blognamen ein:
Die von Ihnen eingegebenen Informationen sind:
Sie können dies auch tun, um zu verhindern, dass Benutzer leere Informationen eingeben

<?php
/**
 * 提示用户输入,类似Python
 */
 
$fs = true;
 
do{
oif($fs){
fwrite(STDOUT,&#39;请输入您的博客名:&#39;);
$fs = false;
}else{
fwrite(STDOUT,&#39;抱歉,博客名不能为空,请重新输入您的博客名:&#39;);
}
 
$name = trim(fgets(STDIN));
 
}while(!$name);
 
echo &#39;您输入的信息是:&#39;.$name."\r\n";

Ausführen

[root@DELL113 lee]# /usr/local/php/bin/php test.php 
请输入您的博客名:
抱歉,博客名不能为空,请重新输入您的博客名:
您输入的信息是:


Das obige ist der detaillierte Inhalt vonSo übergeben Sie Parameter an PHP unter dem Shell-Befehl. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn