是否可以从$_GET['var']
设置一个变量值来做这样的事情:
if( $foo = isset($_GET['foo']) ) // Or something close to this.
I.e if $_GET['foo'] is set assign it's value then and there
而不是像我现在这样做
if( isset($_GET['foo']) )
$foo = $_GET['foo'];
当它只有一两个时,这是可以的,但是当你有10个以上的$ _GET时,就像我一样,它变得丑陋。
答案 0 :(得分:1)
用户三元运营商
$foo = isset($_GET['foo']) ? $_GET['foo'] : "";
答案 1 :(得分:1)
试
$foo = !empty($_GET['foo']) ? $_GET['foo'] : null;
答案 2 :(得分:0)
不,这是不可能的。你可以用三元语句简写,但这不是很笨重。
您可以做的最好的事情就是编写如下函数:
function extractFromGet(array $keys) {
$ret = []; // empty array
foreach ($keys as $key) {
$ret[$key] = isset($_GET[$key]) ? $_GET[$key] : null;
}
return $ret;
}
然后您可以按如下方式调用它:
list ($name, $email, $telephone, $address) = extractFromGet(
['name', 'email', 'telephone', 'address']
);