检查数组中字符串的一部分

web*_*mad 2 php arrays string search

我想检查一个字符串的一部分(不是全字符串,因为它将是变量)是否存在于数组中.

$test = array(
  0 => 'my searcg',
  1 => 'set-cookie: shdugdd',
  2 => 'viable: dunno'
);
Run Code Online (Sandbox Code Playgroud)

我想要的是检查其中一个键是否具有字符串"set-cookie",如果是,则返回键.我无法检查完整的字符串,因为set-cookie每次都会有不同的值.它可能也不存在,所以也需要检查它.

我知道我可以遍历数组并检查相同并得到结果,但我正在寻找一个更简洁/有效的答案.无法获得解决方案.

car*_*ina 7

foreach($test as $key=> $value)
{
  if (strpos($value,'set-cookie') !== false) 
 {
  echo $key; // print key containing searched string
  }
}
Run Code Online (Sandbox Code Playgroud)

这是另一种选择.(工作示例)

   $matches = preg_grep('/set-cookie/', $test); 
    $keys    = array_keys($matches); 

    print_r($matches);
Run Code Online (Sandbox Code Playgroud)