PHP argv丢失导致脚本无法运行[重复]
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP argv丢失导致脚本无法运行[重复]相关的知识,希望对你有一定的参考价值。
这个问题在这里已有答案:
我从bash调用php脚本,偶尔我会提供2个或有时3个参数
Bash脚本
ip = 192.168.1.4
name = machine2
callScript=`/usr/bin/php check.php $ip $name`
callScript2=`/usr/bin/php check.php $name`
正如您所看到的,有一次我使用两个参数调用PHP脚本,而使用一个参数调用另一个参数。问题从第二个开始,因为PHP有argv [1]和argv [2]然后PHP抱怨说PHP Notice: Undefined offset: 2
因为没有传递第二个参数
这是我的PHP脚本
$placeholder = NULL;
if ($argv[2] === NULL) {
//Do nothing
} else {
$placeholder = $argv[2];
}
我这样做,以便如果传递第二个参数,将其存储在占位符中,但如果不是,则不执行任何操作。问题是PHP在我的代码的第二行停止,因为$ argv [2]不存在,因为我偶尔只提供一个参数。
答案
检查它是否已设置而不是null。
$placeholder = (isset($argv[2]) ? $argv[2] : null);
以上是关于PHP argv丢失导致脚本无法运行[重复]的主要内容,如果未能解决你的问题,请参考以下文章