PHP头条
热点:

php如何使用str_replace替换多维数组来分析


首先来测试一下直接使用str_replace来测试数组的替换


1

2

3

4

5

6

$a = array(

'a' => 'bdc#',

'ceshi' => array('c'=>array('f'=>'#'))

);

$a = str_replace('#', 'ccc', $a);

var_dump($a);

发现输出如下:


1

2

3

4

5

6

7

array (size=2)

 'a' => string 'bdcccc' (length=6)

 'ceshi' =>

  array (size=1)

   'c' =>

    array (size=1)

     'f' => string '#' (length=1)

发现只替换了一维数组中的字符串,更多维的数组并没有并替换掉。

函数实现多维数组的字符串替换


1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

$a = array(

'a' => 'bdc#',

'ceshi' => array('c'=>array('f'=>'#'))

);

function strReplace(&$array) {

 $array = str_replace('#', 'ccc', $array);

if (is_array($array)) {

  foreach ($array as $key => $val) {

    if (is_array($val)) {

      strReplace($array[$key]);

    }

  }

}

}

strReplace($a);

var_dump($a);

输出如下:


1

2

3

4

5

6

7

array (size=2)

 'a' => string 'bdcccc' (length=6)

 'ceshi' =>

  array (size=1)

   'c' =>

    array (size=1)

     'f' => string 'ccc' (length=3)

发现实现了多维数组的字符串替换

函数strReplace传入数组的地址,通过递归的方式来实现替换字符串。当然这只是一个很简单的方法,实现的方法很多,喜欢就好!

www.phpzy.comtrue/php/27874.htmlTechArticlephp如何使用str_replace替换多维数组来分析 首先来测试一下直接使用str_replace来测试数组的替换 1 2 3 4 5 6 $a = array ( 'a' = 'bdc#' , 'ceshi' = array ( 'c' = array ( 'f' = '#' )) ); $a = str_replace ( '#' , 'ccc...

相关文章

    暂无相关文章

PHP之友评论

今天推荐