我想为5组参数执行此操作这是最好的方法吗?还是有一些更简单的语法?
if(isset($_GET['credentials'])) $credentials = $_GET['credentials'];
if(isset($_POST['credentials'])) $credentials = $_POST['credentials'];
if(isset($_POST['c'])) $credentials = $_POST['c'];
if(isset($_GET['c'])) $credentials = $_GET['c'];
Run Code Online (Sandbox Code Playgroud)
同样具有相同的层次结构.
PHP 7引入了The null coalescing operator(??),您可以像这样使用:
$result = $var ?? 'default';
Run Code Online (Sandbox Code Playgroud)
这将分配default到result,如果:
$var 未定义.$var 是 NULL您还可以使用多个??运算符:
$result = $null_var ?? $undefined_var ?? 'hello' ?? 'world'; // Result: hello
Run Code Online (Sandbox Code Playgroud)
要回答你的问题,你应该做的事情如下:
$credentials = $_GET['c'] ?? $_POST['c'] ?? $_POST['credentials'] ?? $_GET['credentials'];
Run Code Online (Sandbox Code Playgroud)