【发布时间】:2021-06-16 16:23:32
【问题描述】:
有没有更好的方法以更少的代码行检查所有这些?
if (
$item->getProduct() !== null
&& $item->getProduct()->getMedia() !== null
&& $item->getProduct()->getMedia()->count()
&& $item->getProduct()->getMedia()->first() !== null
&& $item->getProduct()->getMedia()->first()->getMedia()
) {
$imageUrl = $item->getProduct()->getMedia()->first()->getMedia()->getUrl();
【问题讨论】:
-
您可以使用Null Object Pattern。
-
哇!这些是很好的答案/ cmets!谢谢@markus-zeller 和 imsop!
-
@IMSoP 我想你可以发布答案。虽然 php8 并非无处不在,但它是我问题的最巧妙的解决方案。 (我知道我用 php7 标记了问题)