Array_Slice는 배열 조각을 추출하는 데 PHP가 사용하는 함수입니다. 배열에서 일부 요소를 가로 채고 원래 배열에 영향을 미치지 않고 새 배열을 반환 할 수 있습니다. 기본 구문은 다음과 같습니다.
array_slice(array $array, int $offset, ?int $length = null, bool $preserve_keys = false): array
$ 배열 : 작동 할 배열.
$ 오프셋 : 가로 채기 시작하는 위치, 0은 첫 번째 요소에서 시작하는 것을 의미합니다.
$ 길이 (선택 사항) : 가로 채기 길이.
$ preserve_keys (선택 사항) : 원래 배열의 키 이름을 유지할지 여부는 기본값이 false 입니다.
대기열에서, Dequeueing은 첫 번째 요소를 "가져 와서 제거하는 것입니다. PHP에는이 작업을 직접 완료 할 수있는 Array_shift () 함수가 있지만이 기사는 Array_Slice를 사용 하여이 프로세스를 구현하는 방법에 중점을 둡니다.
대기열을 나타내는 배열이 있다고 가정합니다.
$queue = ['A', 'B', 'C', 'D'];
탈취하려면 두 단계가 필요합니다.
첫 번째 요소 'a'를 제거하십시오.
나머지 요소는 새로운 대기열을 형성합니다 [ 'b', 'c', 'd'] .
<?php
// 원래 대기열
$queue = ['A', 'B', 'C', 'D'];
// 팀의 머리 요소를 꺼내십시오
$dequeueElement = $queue[0];
// 사용 array_slice 새 대기열을 생성하십시오,첫 번째 요소를 건너 뜁니다
$queue = array_slice($queue, 1);
// 출력 결과
echo "출발의 요소는입니다:" . $dequeueElement . "\n";
echo "새로운 대기열은입니다:";
print_r($queue);
?>
실행 결과 :
출발의 요소는입니다:A
새로운 대기열은입니다:
Array
(
[0] => B
[1] => C
[2] => D
)
$ queue [0]는 첫 번째 요소에 Dequeue 요소로 직접 액세스됩니다.
Array_Slice ($ Queue, 1)는 색인 1에서 가로 채기 시작하고 첫 번째 요소를 제외한 모든 요소를 얻고 새 대기열을 형성합니다.
이것은 array_slice 를 사용하여 큐의 탈신을 시뮬레이션합니다.
멀티플렉싱의 편의를 위해 기능으로 캡슐화 할 수 있습니다.
<?php
function queueDequeue(array &$queue) {
if (empty($queue)) {
return null; // 대기열이 비어 있습니다,반품 null
}
$element = $queue[0];
$queue = array_slice($queue, 1);
return $element;
}
// 예
$queue = ['A', 'B', 'C', 'D'];
$first = queueDequeue($queue);
echo "출발 요소:" . $first . "\n";
print_r($queue);
?>
Array_Slice는 배열의 모든 조각을 가로 채는 데 사용될 수 있으며, 이는 배열 헤드에서 "나머지 요소"를 가로 채기에 매우 적합합니다.
배열의 첫 번째 요소에 직접 액세스하여 큐 기능을 구현합니다.
Array_shift 는 더 직접적이지만 Array_Slice를 사용하면 배열 작업에 대한 이해가 심화되고보다 복잡한 큐 동작을 사용자 정의 할 수 있습니다.
더 많은 PHP 관련 콘텐츠는 https://gitbox.net/php-array-funtions를 방문하여 자세한 내용을보십시오.