从递归数组中删除标记


Remove Tags from Recursive Array

我有下面的递归数组作为输出

我已经访问过PHP:去掉array_values((中的值的标签

Array
(
    [0] => Array
        (
            [0] => Array
                (
                    [0] => <td>1</td>
                )
            [1] => Array
                (
                    [0] => <td align="left">Normal</td>
                )
        )
    [1] => Array
        (
            [0] => Array
                (
                    [0] => <td>1</td>
                )
            [1] => Array
                (
                    [0] => <td align="left">Normal</td>
                )
        )
)

因此对于CCD_ 1将是CCD_;<td align="left">Normal</td>将是Normal

想要strip_tags我的递归数组。

您可以尝试使用这个自定义递归strip_tags函数:

function recursiveStripTags($data) {
    foreach ($data as $key => $value) {
        if(is_array($value)) {
            $data[$key] = recursiveStripTags($value);
        }
        else {
            $data[$key] = strip_tags($value);
        }
    }
    return $data;
}
$data = recursiveStripTags($data);

您只需使用preg_replace():

foreach ($arrs as $arr) {
    foreach ( $arr as $ar) {
        $ar[0] = preg_replace("/<[^<]*>/", "", $ar[0]);
    }
}