【问题标题】:php select index where array containsphp选择数组包含的索引
【发布时间】:2011-05-27 02:48:18
【问题描述】:

是否有一个函数可以在数组中搜索是否包含文本的一部分 就像 jquery(':contains')

然后返回它所在的索引:) 这是一个帮助您将其可视化的示例:)

$arr = array(
  [0] => 'hello world',
  [1] => 'foo',
  [2] => 'bar',
);
$a = arr_contains('o',$arr); //returns array(1,0);
$b = arr_contains('fo',$arr);//return array(1);
$c = arr_contains('a',$arr);//return array(2);
$d = arr_contains('hello',$arr);//return array(0);

如果递归可以完成将是一个加号:)

【问题讨论】:

    标签: php arrays search recursion


    【解决方案1】:

    不,您必须编写一个自定义函数以通过子字符串进行匹配:

    function arr_contains($str, $arr) {
        $ret = array();
        foreach ($arr as $k => $v) {
            if (is_array($v)) {
                if ($subarr = arr_contains($str, $v)) {
                    $ret[] = $subarr;
                }
            } else if (strpos($v, $str) !== false) {
                $ret[] = $k;
            }
        }
        return $ret;
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-06-23
      • 2020-01-31
      • 1970-01-01
      • 1970-01-01
      • 2022-01-22
      • 2021-08-06
      • 2018-02-13
      相关资源
      最近更新 更多