dongtuan5367 2019-03-18 09:40
浏览 30
已采纳

如何检查项目数组是否仅包含此项目?

$items1 = ['apple', 'tree', 'juice'];
$items2 = ['apple', 'tree'];
$items3 = ['apple'];

// loop
If ($items[i].containsOnly['apple'])
{
  // do something..
}

In the simplified example above I want to get the array that matches the given item. Is there a method available similar to 'containsOnly'? Or what is the best way to do this?

  • 写回答

5条回答 默认 最新

  • doty58493 2019-03-18 09:45
    关注

    Couple your logic with count:

    function containsOnly($a, $v)
    {
        return count($a) === 1 && array_values($a)[0] === $v; 
    }
    

    This will ensure that you have only one item and the value is equal to what you are searching for.

    Note: The usage of array_values here is to reset all the indexes so we can ensure [0] is where the value will be. Instead of the array_values variation you can use in_array if you prefer that.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大
  • ¥15 import arcpy出现importing _arcgisscripting 找不到相关程序
  • ¥15 onvif+openssl,vs2022编译openssl64