“:”是什么意思?在方法之后意味着 PHP?
What does ":?" after a method means in PHP?
我刚刚在 Symfony 4 应用程序中看到这个,但我找不到它的意思
public function findOneBySomeField($value): ?Article
{
return $this->createQueryBuilder('a')
->andWhere('a.exampleField = :val')
->setParameter('val', $value)
->getQuery()
->getOneOrNullResult()
;
}
我知道,现在使用 PHP 7 您可以使用 ":int $val" 定义返回值的预期类型,但是在这里,什么? 符号表示 ?
这是 PHP 7.1 的新功能。看解释here
Type declarations for parameters and return values can now be marked as nullable by prefixing the type name with a question mark. This signifies that as well as the specified type, NULL can be passed as an argument, or returned as a value, respectively.
这意味着您的函数的预期输出将是 class Article
的实例或者是 NULL
.
我刚刚在 Symfony 4 应用程序中看到这个,但我找不到它的意思
public function findOneBySomeField($value): ?Article
{
return $this->createQueryBuilder('a')
->andWhere('a.exampleField = :val')
->setParameter('val', $value)
->getQuery()
->getOneOrNullResult()
;
}
我知道,现在使用 PHP 7 您可以使用 ":int $val" 定义返回值的预期类型,但是在这里,什么? 符号表示 ?
这是 PHP 7.1 的新功能。看解释here
Type declarations for parameters and return values can now be marked as nullable by prefixing the type name with a question mark. This signifies that as well as the specified type, NULL can be passed as an argument, or returned as a value, respectively.
这意味着您的函数的预期输出将是 class Article
的实例或者是 NULL
.