>  기사  >  백엔드 개발  >  Xin Xing은 array_walk와 array_map 배열 걷기 클래스 배열 걷기 트림 배열 걷기 익명 함수 사이의 연결과 차이점을 간략하게 분석합니다.

Xin Xing은 array_walk와 array_map 배열 걷기 클래스 배열 걷기 트림 배열 걷기 익명 함수 사이의 연결과 차이점을 간략하게 분석합니다.

WBOY
WBOY원래의
2016-07-29 08:54:241179검색

이 두 함수의 구체적인 사용법을 살펴보겠습니다. 첫 번째는 array_walk이며 코드는 다음과 같습니다.

<?php
$arr = array(2,4,5,6,7);

function xin(&$val,$key){
	$val =  $val*$val;
}

array_walk($arr, "xin");
var_dump($arr);
출력 내용은 다음과 같습니다.

array (size=5)
  0 => int 4
  1 => int 16
  2 => int 25
  3 => int 36
  4 => int 49
array_map의 경우 예를 들어 보겠습니다.

<?php

function xin($a,$b){
	return $a*$b;
}
 
$arr = array(2,3,4,5);
$brr = array(5,6,7,8);
$crr = array_map("xin",$arr,$brr);
var_dump($crr);
출력 내용은 다음과 같습니다.

array (size=4)
  0 => int 10
  1 => int 18
  2 => int 28
  3 => int 40

예를 들어 배열을 순회하면 두 함수를 모두 구현할 수 있지만 일반적으로 초점이 다릅니다.

(1)array_map은 n개의 배열을 동시에 탐색할 수 있지만 array_walk는 일반적으로 하나의 배열을 탐색합니다.

(2) array_map에는 반환 값이 있어야 합니다. 반환 값이 새 배열을 형성해야 하기 때문입니다. 그러나 array_walk는 일반적으로 원본 데이터를 변경하는 데 사용되므로 일반적으로 필요하지 않습니다.

(3) array_map은 보통 데이터 역할을 하는데, array_walk는 데이터 삭제나 추가를 권장하지 않고 값만 수정하는 것을 권장합니다.

물론 경우에 따라서는 동일한 기능을 수행할 수 있지만 두 가지가 서로 다르지는 않습니다.

위 내용은 array와 walk의 내용을 포함하여 array_walk와 array_map의 연결과 차이점에 대한 Xin Xing의 간략한 분석을 소개하고 있으며, PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.

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