php - PHP 返回或继续为空
问题描述
是否可以在 PHP 中用单行编写这样的内容:
return $this->checkToken() ?? continue;
所以它会返回值,但如果返回 null 它将继续程序。我知道您可以捕获该值,然后执行 if value !null 返回。
想知道是否有可以使用的单行版本。
解决方案
一旦你用 开始一个表达式return
,你就承诺返回一些东西。
您可以做的是内联赋值并检查,因为赋值表达式的结果是赋值。
if (($token = $this->checkToken()) !== null) return $token;
echo 'If $token is null, this line will execute';
这与您将获得的单行代码差不多。为了可读性/可维护性,我仍然会使用以下内容
$token = $this->checkToken();
if ($token !== null) {
return $token;
}
// and so on
推荐阅读
- android - Java泛型:将多种类型传递给钻石
- c# - void Enter() = 0; 是什么意思?在 C# 中是什么意思?
- vue.js - 在 sass 中添加背景图像
- javascript - 在下拉列表中打开表单
- entity-framework-core - ToListAsync() 导致 DbContext 使用 ef core 崩溃
- django - Django 'pip install django-heroku'(psycopg2) 错误阻止部署到 Heroku
- swift - 设置footerView UI TableView的背景颜色不起作用
- css - 我想在段落中显示图像,但是当我单击显示图像时,文本会上下移动
- regex - 在 perl 中使用正则表达式获取等式左侧的值
- c# - 将 Ienumerable 参数分配给 ArrayList