>백엔드 개발 >PHP 튜토리얼 >PHP에서 다차원 배열을 대체하기 위해 str_replace를 사용하는 구현 방법에 대한 자세한 설명

PHP에서 다차원 배열을 대체하기 위해 str_replace를 사용하는 구현 방법에 대한 자세한 설명

怪我咯
怪我咯원래의
2017-07-05 10:21:051568검색

이 글에서는 주로 str_replace를 사용하여 PHP에서 다차원 배열을 대체하는 구현 방법을 소개합니다. 구체적인 예를 결합하여 PHP의 구현 기술과 다차원 배열 순회에 관련된 노트을 비교 분석합니다. 및 치환 연산이 필요한 친구들은 다음을 참고하시면 됩니다.

본 글에서는 PHP에서 str_replace를 사용하여 다차원 배열을 치환하는 구현 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 세부 사항은 다음과 같습니다.

PHP에서 str_replace를 사용하여 배열의 string을 바꾸면 1차원 배열인 경우에만 바꿀 수 있습니다. 배열의 경우 모든 문자열을 바꿀 수는 없습니다. 그래서 다차원 배열 문자열의 대체를 구현하는 방법을 작성했습니다.

먼저 str_replace를 사용하여 직접 배열 대체 테스트를 수행해 보겠습니다.

$a = array(
'a' => 'bdc#',
'ceshi' => array('c'=>array('f'=>'#'))
);
$a = str_replace('#', 'ccc', $a);
var_dump($a);

결과가 다음과 같은 것을 발견했습니다.

array (size=2)
 'a' => string 'bdcccc' (length=6)
 'ceshi' =>
  array (size=1)
   'c' =>
    array (size=1)
     'f' => string '#' (length=1)

문자만 발견했습니다. 1차원 배열에서 대체되었습니다. 더 많은 차원을 가진 문자열과 배열은 대체되지 않습니다.

다차원 배열의 문자열 대체를 구현하는 함수

$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);

출력은 다음과 같습니다.

array (size=2)
 'a' => string 'bdcccc' (length=6)
 'ceshi' =>
  array (size=1)
   'c' =>
    array (size=1)
     'f' => string 'ccc' (length=3)

다차원 배열의 문자열 대체가 구현된 것으로 확인되었습니다

strReplace 함수는 배열의 주소를 전달하고 문자열을 재귀적으로 교체합니다. 물론 이것은 매우 간단한 방법일 뿐이며 이를 구현하는 방법은 다양합니다.

위 내용은 PHP에서 다차원 배열을 대체하기 위해 str_replace를 사용하는 구현 방법에 대한 자세한 설명의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.