如何查找和替换对象中的文本

时间:2014-11-25 10:11:41

标签: php laravel laravel-4

我有一个像这样的对象:pastebin.com我希望找到每个“a”并用带下划线的“a”替换。我尝试过: preg_replace("/(" . preg_quote("a") . ")/", "<u>$1</u>", $object);  但它返回一个字符串而不是对象或数组。我该怎么做?

1 个答案:

答案 0 :(得分:1)

目前您有一个JSON字符串。你有什么工作,但可以让你将<u>标签插入你不想要的JSON密钥。

如何首先将此JSON转换为数组,循环遍历数组,并使用已替换a的值更新每个元素:

$arr = json_decode($json, true);
foreach($arr as &$elm){
    $elm = array_map(function($i){
        return preg_replace("/(" . preg_quote("a") . ")/", "<u>$1</u>", $i);
    }, $elm);
}

Demo