PHP str_ireplace不替换数组中的值

时间:2013-12-15 19:59:50

标签: php

我有以下功能,不知道我缺少什么让它起作用:

private function highlight_words($items, $word) {      
    return str_ireplace($word, '<span class="highlight">'.$word.'</span>', $items);         
}

其中$items是一个数组且肯定包含字符串$word$word不为空。

首先,我正在调用这样的搜索功能 - &gt; $this->set('results', $this->search());以及search函数 - &gt; return $this->highlight_words($results, $search_term);

php.net起,它应该像现在一样工作:

  

如果subject是一个数组,那么搜索和替换是对主题的每个条目执行的,返回值也是一个数组。

1 个答案:

答案 0 :(得分:1)

我试图在多维数组中替换字符串,其中str_ireplace没有任何效果。不得不重新编写我的功能以使其工作:

private function highlight_words($items, $word) {      
    foreach ($items as $key => $item) {
        foreach ($item as $k => $i) {           
            $items[$key][$k] = str_ireplace($word, '<span class="highlight">'.$word.'</span>', $i);                
        }
    }
    return $items;          
}