2017-03-02 38 views
0

我现在正在使用PHP的web应用程序。到目前为止有一个定义的数组结构如下:如何检查在数组中是否存在包含某个字符串的密钥?

$array = array("check_first" => true, "check_second" => false) 

也有很多其他的阵列,默认的数值结构,按键:0,1,2,3等

我现在想拍数组和键之间的差异,数字键和数组键与以“check_”开头的字符串键。

所以我想通过我所有定义的数组进行搜索,如果有一个包含字符串“check_”的键的数组。我宁愿为此做一个简单的if语句。

我希望这是有道理的。谢谢你们的评论!

+0

你想要结果是什么?你说数组之间的_difference与nummerical和数组的键之间的关键字的字符串,以“check _”_开头,那么数组是什么,以及你想要的差异结果是什么? – AbraCadaver

回答

0
  • 第1步:通过与foreach
  • 第二步阵列的每个条目循环,检查是否使用您的字符串键启动strpos($key, 'check_')!==false
0

一种方法是让所有的数组键,串联他们成一个单一的字符串,然后使用strpos来测试是否有任何'check_'的实例。

if (strpos(implode('',array_keys($arr)),'check_') !== false) { 
    echo 'This array has "check_" keys!'; 
} 

虽然这是编码简洁它包括三个函数调用,其中的两个被施加到所有的数组元素。在第一场比赛中休息的foreach循环可能会更快。

+0

请给你的答案添加一些解释 – Sampada

相关问题