怎么删除php数组里面特定字符前面内容?

发布网友 发布时间:2022-04-06 01:09

我来回答

1个回答

热心网友 时间:2022-04-06 02:39

这个一般就是使用正则表达式了,封装一个函数:

    $str = "<p>百度一下你就知道<br /></p> <h2>方法:</h2> <p> ....... <br /> ........";

    $str2 = "<p>希望对你有帮助方法:</h2> <p> ....... <br /> ........";

    function my_replace($str){
    $result = preg_replace("/(.*)(方法:.*)/", "\\2", $str);
    return $result;
    }

    echo my_replace($str);
    echo my_replace($str2);

方法:</h2> <p> ....... <br /> ........方法:</h2> <p> ....... <br /> ........



如有疑问请追问。

追问你写的我测试了没问题,但是我套用到我的代码愣是没效果,我的数组是二维的调用别人借口返回的json格式的数据,
$json=json_decode($html,true);
我就直接 echo my_replace($json["aa"]["bb"]),好像不行,我最终还要把处理过的数据重新赋值到这个位置,哪里不对啊?

追答

依然不是太清楚你的状况,猜测问题应该是访问$json处理不正确,请参考下面的代码,如有疑问,请追问:

function object_array($array) {  
    if(is_object($array)) {  
        $array = (array)$array;  
     } if(is_array($array)) {  
         foreach($array as $key=>$value) {  
             $array[$key] = object_array($value);  
             }  
     }  
     return $array;  
}

$array =  array("1"=>"A","2"=>"B","3"=>array("3-1"=>"C"));

$json = json_encode($array);

echo $json;

$array2 = json_decode($json);

echo "<pre>";
print_r($array2);
echo "</pre>";
//print_r($array2["3"]["3-1"]);//访问报错, Cannot use object of type stdClass as array 

$array2 = object_array($array2);//object转换成数组后,可以正常处理。
print_r($array2["3"]["3-1"]);

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com