PHP의 여러 배열 함수 이해

WBOY
풀어 주다: 2016-07-25 09:07:24
원래의
912명이 탐색했습니다.
  1. // Sum
  2. function rsum($v, $w)
  3. {
  4. return $v; > }
  5. // 증착 찾기
  6. function rmul($v, $w)
  7. {
  8. return $v
  9. }
  10. $a = array ( 1, 2, 3, 4, 5);
  11. $x = array();
  12. $b = array_reduce($a, "rsum")
  13. echo 'result:'; ($b);
  14. echo '
    ';
  15. // 위 출력은 15이며 이는 array_sum
  16. $c = array_reduce($a , "rsum ", 1);
  17. echo
  18. print_r($c)
  19. echo
  20. // 출력 16 array_sum + 1
  21. $d = array_reduce($a, "rmul", 10)
  22. echo 'result:'
  23. print_r($d); ; br />'; // 1200, 10 * 1 * 2 * 3 * 4 * 5
  24. $d = array_reduce($a, "rmul")
  25. echo ' 결과: ';
  26. print_r($d);
  27. echo '
    '
  28. // 0, 0 * 1 * 2 * 3 * 4 * 5
  29. $d = array_reduce($x, "rsum", 1);
  30. echo 'result:';
  31. print_r($d)
  32. // 출력 1 $x가 비어 있으므로 직접 이니셜반환
  33. 코드복사
2. array_chunk 함수

(PHP 4 >= 4.2.0, PHP 5) array_chunk — 배열을 여러 개로 분할 설명하다 배열 array_chunk ( array$input , int$size [, bool$preserve_keys ] )

array_chunk()는 배열을 여러 배열로 분할합니다. 여기서 각 배열의 셀 수는 크기에 따라 결정됩니다(즉, 각 배열에는 크기 요소가 있습니다). 마지막 배열에는 몇 가지 더 적은 요소가 있을 수 있습니다. 결과 배열은 인덱스가 0부터 시작하는 다차원 배열의 셀입니다.

PHP가 입력 배열의 원래 키 이름을 유지할 수 있도록 하려면 선택 매개변수인 presents_preserve_keys를 TRUE로 설정하세요. FALSE를 지정하면 각 결과 배열은 0부터 시작하는 새 숫자로 인덱싱됩니다. 기본값은 거짓입니다. 이 기능은 비교적 이해하기 쉽기 때문에 자세히 설명하지 않겠습니다.

3. array_flip 함수

(PHP 4, PHP 5) array_flip — 배열의 키와 값을 교환합니다. 설명하다 배열 array_flip (array$trans)

array_flip()은 역방향 배열을 반환합니다. 예를 들어 trans의 키 이름은 값이 되고, trans의 값은 키 이름이 됩니다.

trans의 값은 정수 또는 문자열과 같은 유효한 키 이름이어야 합니다. 값의 유형이 잘못된 경우 경고가 발생하며 문제의 키/값 쌍은 반전되지 않습니다.

동일한 값이 여러 번 나타나는 경우 마지막 키 이름이 해당 값으로 사용되고 나머지는 모두 손실됩니다.

array_flip()은 실패할 경우 FALSE를 반환합니다.

참고: 연속으로 두 번 호출하면 중복된 항목이 제거될 수 있습니다!

4. array_filter 함수

(PHP 4 >= 4.0.6, PHP 5) array_filter — 콜백 함수를 사용하여 배열의 요소를 필터링합니다. 설명하다 배열 array_filter ( array$input [, callback$callback ] )

array_filter()는 입력 배열의 각 값을 콜백 함수에 차례로 전달합니다. 콜백 함수가 TRUE를 반환하면 입력 배열의 현재 값이 반환된 결과 배열에 포함됩니다. 배열의 키 이름은 변경되지 않습니다.

array_filter() 예

function 홀수($var)
    {
  1. return($var % 2 == 1); 🎜> }
  2. function even($var)
  3. {
  4. return($var % 2 == 0)
  5. }
  6. $array1 = array("a "=>1, "b"=>2, "c"=>3, "d"=>4, "e"=>5);
  7. $array2 = 배열(6, 7 , 8, 9, 10, 11, 12);
  8. echo "홀수:n"; print_r(array_filter($array1, "odd")); ;
  9. print_r(array_filter($array2, "even"))
  10. ?>
  11. 코드 복사
  12. 출력: 이상한 : 정렬 ( [a] => 1 [c] => 3 [e] => 5 ) 심지어: 정렬 ( [0] => 6 [2] => 8 [4] => 10 [6] => 12 )

    사용자는 콜백 함수에서 배열 자체를 수정해서는 안 됩니다. 예를 들어, 셀을 추가/삭제하거나 array_filter()에 의해 작동되는 배열을 설정 해제합니다. 배열이 변경되면 이 함수의 동작이 정의되지 않습니다.

    콜백 함수가 제공되지 않으면 array_filter()는 입력에서 값이 FALSE인 모든 항목을 삭제합니다. 자세한 내용은 부울로 변환을 참조하세요.

    1. $entry = array(
    2. 0 => 'foo',
    3. 1 => ; 거짓,
    4. 2 => -1,
    5. 3 => null,
    6. 4 => ''
    7. )
    8. print_r(array_filter($entry))
    9. ?>
    코드 복사

    위 예의 출력: 정렬 ( [0] => 푸 [2] => -1 )



원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿