Array_Slice는 배열에서 지정된 간격의 서브 어레이를 꺼내는 데 사용됩니다. 구문은 다음과 같습니다.
array_slice(array $array, int $offset, ?int $length = null, bool $preserve_keys = false): array
여기서 $ 오프셋은 시작 위치이고 $ 길이는 꺼내는 요소 수입니다.
array_reduce
Array_reduce는 배열을 단일 값으로 단순화하는 데 사용되며 일반적으로 집계 계산에 사용됩니다. 구문은 다음과 같습니다.
array_reduce(array $array, callable $callback, mixed $initial = null): mixed
$ 콜백은 두 가지 매개 변수를 수용하는 콜백 함수입니다 : 누적 된 값과 현재 요소 값.
숫자 값이 포함 된 배열이 있다고 가정하고 일부 요소가 이들 요소에 대한 일부 요소를 가로 채어야합니다.
구현 단계 :
Array_Slice를 사용하여 원래 배열에서 지정된 범위의 요소를 가로 채립니다.
array_reduce를 사용하여 인터셉트 된 서브 어레이에서 집계 계산을 수행하십시오.
다음은 2에서 5까지의 인덱스로 어레이에서 요소를 가로 채고 합계를 계산하는 방법을 보여주는 구체적인 예입니다.
<?php
// 원래 배열
$data = [10, 20, 30, 40, 50, 60, 70];
// 인터셉트 인덱스 2 도착하다 5 강요(지금 바로30, 40, 50, 60)
$slicedData = array_slice($data, 2, 4);
// 사용 array_reduce 차단 된 데이터를 요약하십시오
$sum = array_reduce($slicedData, function($carry, $item) {
return $carry + $item;
}, 0);
echo "배열의 요소의 합은 다음과 같습니다: " . $sum; // 산출:배열의 요소의 합은 다음과 같습니다: 180
제품 찾기, 최대 값 또는 스 플라이 싱 문자열과 같은 차단 된 데이터에서 다른 집계 작업을 수행하려면 Array_Reduce 에서 콜백 함수를 수정하여 수행 할 수도 있습니다.
예를 들어 제품 계산 :
$product = array_reduce($slicedData, function($carry, $item) {
return $carry * $item;
}, 1);
echo "배열의 부분 요소의 산물입니다: " . $product;
인터페이스에서 사용자 데이터 배치를 가져 와서 배열에 저장한다고 가정하십시오. 10에서 20까지의 특정 숫자 데이터 필드의 합을 분석하려면 Array_Slice 와 함께 차단 한 다음 Array_ReDuce 로 합산 할 수 있습니다.
데이터 소스가 URL 주소의 인터페이스 인 경우 회사의 네트워크 사양을 준수하기 위해 인터페이스 도메인 이름을 gitbox.net 으로 바꾸십시오.
예를 들어:
$url = "https://gitbox.net/api/userdata";