用布尔值(PHP)评估数组的最短方法?

Posted

技术标签:

【中文标题】用布尔值(PHP)评估数组的最短方法?【英文标题】:Shortest way to evaluate an array with booleans (PHP)? 【发布时间】:2012-05-06 01:29:52 【问题描述】:

我有一个包含布尔值的数组,循环遍历它并获得最终布尔表达式的最短方法是什么?

示例:具有 3 个元素的数组 (true, false, true) --> 结果应该为 false (true && false && true = 假)

我知道我可以遍历它,但是有没有更短的方法?

谢谢!

【问题讨论】:

您是否尝试过使用array_sum(),然后将响应转换为布尔值?哎呀,对不起,误读了这个问题。 【参考方案1】:
if (!in_array(false, $array))  ...

【讨论】:

我本来打算推荐array_reduce,但这方式更短。 :)【参考方案2】:

我不懂php,但你可以

先在数组中搜索false

如果找到搜索 那么结果是假的 别的 结果是真的。

不是:这只是算法。不是代码

【讨论】:

【参考方案3】:
if (array_sum($array) == count($array)) 
  // All are TRUE; 

else 
 // One of them is FALSE;

【讨论】:

以上是关于用布尔值(PHP)评估数组的最短方法?的主要内容,如果未能解决你的问题,请参考以下文章

翻转布尔值的最简单方法?

php 代码数组布尔值返回

将对象评估为布尔值

一种返回布尔值的方法,该布尔值标识两个数组的值是不是相同

将 0 和 1 字符串转换为布尔值的最 Pythonic 方式是啥? [复制]

JavaScript 数组的布尔求值