我尝试在if
对象中创建$soap
语句,同时键入其参数。
我的需要就是这样:
$soap->add($name,$something,$foo,$optionalarg,$optionalarg2);
这本身并不是太糟糕,但我需要更改$optionalarg
以获取其他内容(准确地说是" brak"(" none"在波兰语中) )。
在这种情况下,制作大量案例似乎并不是一个好主意(我认为这样做很多,而且这种做法并不恰当)。
我知道理论上我可以在$soap
之前为每个可选的arg准备,但我正在寻找替代方案。
我试过谷歌搜索,
我尝试做随意的事情(有时候东西只是起作用但不是在这种情况下),比如
$soap->add($name,$something,$foo,{if($enabled==true) $optarg else "brak"})
$soap->add($name,$something,$foo,{if($enabled==true) return $optarg else return "brak"})
$soap->add($name,$something,$foo,if($enabled==true) $optarg else "brak")
一切都在抛出错误,所以我放弃了。
答案 0 :(得分:1)
您正在寻找三元运营商:
$soap->add($name, $something, $foo, $enabled==true ? $optarg : "brak");
或在此特定情况下:
$soap->add($name, $something, $foo, $enabled ? $optarg : "brak");
^^^^^^^^ evaluated / cast to boolean
如果第一个参数求值为true
,则返回第二个参数,如果第一个参数求值为false
,则返回第三个参数。