我使用 getopt 将变量传递给我的脚本,但是收到了消息:
PHP注意:未定义的索引:
这是我的代码:
$MyOptions = getopt("c:hp:");
if ($MyOptions['c']) { //line wher error show up!
$MyClub = $MyOptions['c'];
} else {
$MyClub = '53';
}
我错过了什么?
答案 0 :(得分:0)
问题是c
数组中的索引$MyOptions
不存在,您可以通过多种方式避免这种情况,但在这种情况下,我首选的选项是替换整个if
数组1}} - else
语句带;
$MyClub = $MyOptions['c'] ?? '53';
对于需要与
??
一起使用三元数的常见情况,已添加空合并运算符(isset()
)作为语法糖。它返回第一个操作数(如果存在且不是NULL
;否则它返回第二个操作数。
请注意,这仅适用于PHP 7,否则您必须使用isset()
来检查索引是否存在。