[英]If statement With One equals sign and Two Question Marks - PHP
看看 Symfony 中的 index.php 页面 4. 只是想知道是否有人可以澄清这是什么意思?
if ($trustedHosts = $_SERVER['TRUSTED_HOSTS'] ?? false) {
Request::setTrustedHosts([$trustedHosts]);
}
我认为这相当于以下但不确定谢谢。
if(isset( $_SERVER['TRUSTED_HOSTS'] )){
$trustedHosts = $_SERVER['TRUSTED_HOSTS'];
Request::setTrustedHosts([$trustedHosts]);
}
它相当于:
$trustedHosts = isset($_SERVER['TRUSTED_HOSTS']) ? $trustedHosts : false;
if ($trustedHosts) {
Request::setTrustedHosts([$trustedHosts]);
}
不同之处在于,您的重写仅在设置$_SERVER['TRUSTED_HOSTS']
时设置$trustedHosts
。 但实际代码始终设置变量,如果未设置$_SERVER
元素,则为其提供默认值。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.