如果项值包含搜索的字符串字符,则从数组中删除项

Nic*_*iwi 12 php arrays string

我有一个从网页的URL构建的数组.

如果该数组中的项包含?符号(问号符号)然后我想从数组中删除该项目.

$array = 'news','artical','?mailchimp=1';
Run Code Online (Sandbox Code Playgroud)

我怎么能这样做?我已经看过许多例子,其中搜索的字符串是整个值,但不是它只是一个字符或只是值的一部分.

谢谢

Nam*_*ess 19

http://www.php.net/manual/en/function.array-filter.php

function myFilter($string) {
  return strpos($string, '?') === false;
}

$newArray = array_filter($array, 'myFilter');
Run Code Online (Sandbox Code Playgroud)


Mir*_*ica 11

foreach($array as $key => $one) {
    if(strpos($one, '?') !== false)
        unset($array[$key]);
}
Run Code Online (Sandbox Code Playgroud)


Lee*_*vis 6

使用封口......

$array = array_filter($array, function($value){
   if (strstr($value, '?') !== false)
   {
      return false;
   }
   return true;
});
Run Code Online (Sandbox Code Playgroud)