배열이 있다고 가정합니다.
$array = [
0 => '사과',
1 => '바나나',
3 => '귤',
5 => '포도'
];
배열의 키가 0, 1, 3 및 5임을 알 수 있으며 중간에 연결이 끊어집니다. 이 배열을 통해 반복하면 값이 정상이지만 키 값에 의존하면 예기치 않은 결과가 생성 될 수 있습니다.
Array_Values 함수의 함수는 배열의 모든 값을 반환하고 이러한 값을 다시 표시하는 것입니다. 키 이름은 0에서 증가하여 배열의 키가 연속 숫자인지 확인합니다.
구문 예 :
array_values(array $array): array
리턴 값은 원래 배열의 모든 값을 포함하는 새로운 배열이지만 키 이름은 다시 표시됩니다.
위의 불연속 키 어레이의 경우 array_values를 사용하여 처리합니다.
<?php
$array = [
0 => '사과',
1 => '바나나',
3 => '귤',
5 => '포도'
];
$cleanArray = array_values($array);
print_r($cleanArray);
출력 결과 :
Array
(
[0] => 사과
[1] => 바나나
[2] => 귤
[3] => 포도
)
Array_Values 를 통해 배열 키를 연속 0, 1, 2 및 3으로 성공적으로 변경합니다.
일부 작업을 통해 배열 중간에 요소를 삭제하면 키 이름이 연속적이지 않습니다.
배열 ( 예 : 루프)의 인덱스 트래버스를 수행해야하며 연속 숫자 키가 더 편리합니다.
연속 숫자 키가 필요한 함수 또는 인터페이스로 배열을 전달하십시오.
사용자 입력 또는 프로세스 데이터베이스 쿼리로 반환 된 비 연속 배열을 청소해야합니다.
인터페이스 또는 데이터베이스 쿼리를 통해 다음 배열을 반환하는 경우 (예 : JSON_DECODE에서 얻은 결과) :
<?php
$apiResponse = [
2 => 'Tom',
4 => 'Jerry',
7 => 'Spike'
];
직접 처리 할 수있는 배열로 전환해야합니다.
$cleaned = array_values($apiResponse);
foreach ($cleaned as $key => $name) {
echo "일련 번호 {$key},이름:{$name}" . PHP_EOL;
}
산출:
일련 번호 0,이름:Tom
일련 번호 1,이름:Jerry
일련 번호 2,이름:Spike
Array_Values는 PHP의 배열 인덱스를 쉽고 효율적으로 재 구축하는 방법입니다.
키 이름이 연속적이지 않거나 삭제 된 후 재설정 해야하는 배열에 적용 할 수 있습니다.
배열을 다시 알게 된 후에는 많은 횡단 및 논리적 판단 복잡성을 피할 수 있습니다.
더 많은 PHP 기술을 알고 싶다면 다음을 방문하십시오.
<a href="https://gitbox.net/php-array-functions">PHP배열 기능</a>