1

我正在尝试检查数组中是否只有一个值,如果该特定值是“Home”,则执行某些操作。下面的方法是完成此任务的最佳方法还是我可以一步完成?

喜欢:

$mymenu;    // array

if(count($mymenu) < 2 && in_array('Home', $mymenu)){
    // Do something
}
4

2 回答 2

3

我要做的唯一其他更改是:

if(count($mymenu) === 1 && $mymenu[0] === 'Home')

count将支票从更改为< 2=== 1我来说更好读;回读代码时更有意义,因为它传达了您的实际意思。

至于in_array,由于您知道数组中应该只有一个项目,因此仅使用$mymenu[0]而不是进行针/干草堆查找可能会更快。

除此之外,没有更简洁的方式来做你想做的事。

于 2013-11-04T05:23:38.377 回答
0

试试这个三元运算符...

echo count($mymenu) === 1 && $mymenu[0] === 'Home' ? 'Do something' : null;
于 2013-11-04T05:27:23.320 回答