배열을 다시 인덱싱하는 것은 내장 함수를 함께 사용하여 수행할 수 있습니다. 이러한 함수는 다음과 같습니다.
- array_combine() 함수 :함수 array_combine() - 두 배열을 결합하는 데 사용되는 PHP의 내장 함수입니다. 키에 대해 하나의 배열을 사용하고 값에 대해 다른 배열을 사용하여 새 배열을 만듭니다. 즉, 한 배열의 모든 요소는 새 배열의 키가 되고 두 번째 배열의 모든 요소는 이 새 배열의 값이 됩니다.
- 함수 range(): function range() - 주어진 범위의 정수, 알파벳과 같은 모든 유형의 요소 배열을 만드는 데 사용되는 PHP의 내장 함수입니다. (낮음에서 높은 순으로), 즉 목록의 첫 번째 요소는 낮은 것으로 간주되고 마지막 요소는 높은 것으로 간주됩니다.
- count() 함수 : 함수 count()는 배열의 현재 요소를 계산하는 데 사용됩니다. 함수는 빈 배열로 설정된 변수에 대해 0을 반환할 수 있습니다. 또한 설정되지 않은 변수의 경우 함수는 0을 반환합니다.
- array_values ‚Äã‚Äã() 함수 :이 함수는 다음을 수행하는 데 사용됩니다. 키-값 쌍 또는 값만 포함할 수 있는 다른 배열에서 값 배열을 가져옵니다. 이 함수는 모든 값을 저장하는 또 다른 배열을 생성하고 기본적으로 값에 숫자 키를 할당합니다.
array_values `Äã`()를 사용하여 모든 값을 가져옵니다. array 및 range()를 사용하여 새 키 또는 새 배열 인덱스(재인덱싱)로 사용하려는 배열 요소를 생성합니다. 그런 다음 array_combine() 함수는 배열을 키와 값으로 결합합니다.
예 1:
// 연관 배열 선언
$arr
=
array
(
0 = >
`토니`
,
1 = >
`Stark`
,
2 = >
`철`
,
3 = >
`남자`
) ;
echo
" 색인을 다시 생성하기 전의 배열 "
;
< br>// foreach 루프를 사용하여 배열 요소 인쇄
foreach
(
$arr
as
$key
= >
$value
) {
echo
"색인:"
.
$key
.
"값:"
.
$value
.
""
;
}
// 3의 순차 번호를 설정합니다. e
$New_start_index
= 3;
$arr
=
array_combine
(범위 (
$New_start_index
,
count
(
$arr
) + (
$New_start_index
- 1)),
array_values ​​ (
$arr
));
echo
" 재인덱싱 후 배열 "
;
// foreach 루프를 사용하여 배열 요소 인쇄
foreach
(
$arr
as
$key
= >
$value
) {
echo
"색인:"
.
$key
.
"값:"
.
$value
.
""
;
}
?>
종료: 재인덱싱 전 배열 Index: 0 Value: Tony Index: 1 Value: Stark Index: 2 Value: Iron Index: 3 Value: Re-indexing 후 Man 배열 Index: 3 Value: Tony Index: 4 Value: Stark Index : 5 값: Iron 인덱스: 6 값: Man
예 2.배열의 시작 부분에 일부 데이터를 추가한 다음 인덱스에서 배열을 추출합니다. <코드><코드>
// 연관 배열 선언
$arr
=
array
(
0 = >
`토니`
,
1 = >
`Stark`
,
2 = >
`철`
,
3 = >
`남자`
);
echo
" 색인을 다시 생성하기 전의 배열 "
;
// foreach 루프를 사용하여 배열 요소 인쇄
foreach
(
$arr
as
$key
= >
$value
) {
echo
"색인:"
.
$key
.
"값:"
.
$value
.
""
;
}
// 3의 연속 번호 설정$New_start_index
= 3;
$raw_data
= 범위(0,
$New_start_index
- 1);
// 배열의 시작 부분에 데이터 추가
foreach
(
$raw_data
as
$key
= >
$value
) {
array_unshift
(
$arr
,
$값 );
}
$arr
=
array_values ​​
(
$arr
);
// 불필요한 인덱스를 제거하여 10 $arr
=
array_slice
(
$arr
,
$New_start_index
,
count
(
$arr
), true);
echo
"재인덱싱 후 배열"
;
// foreach 루프를 사용하여 배열 인쇄
foreach
(
$arr
as
$key
= >
$value ) {
echo
"색인:"
.
$key
.
"값:"
.
$value
.
""
;
}
?>
종료:재인덱싱 전의 배열 인덱스: 0 값: Tony 인덱스: 1 값: Stark 인덱스: 2 값: Iron 인덱스: 3 값: 재인덱싱 후의 Man 배열 인덱스: 3 값: Tony 인덱스: 4 값: Stark 인덱스: 5 값 : Iron Index: 6 Value: Man
이 예에서는 먼저 배열에 일부 데이터를 추가하고 이를 위해 루프를 사용하여 다시 수행한 다음 추가한 데이터를 삭제하므로 이것이 최선이 아닙니다. 배열 재인덱싱을 위한 선택 ... 이 방법은 알파벳 키를 재인덱싱하는 데 적합하지 않습니다.예시 3:이 예는 알파벳 배열 `p`를 다시 인덱싱합니다. 알파벳을 다시 색인화하는 데 두 가지 추가 함수가 사용됩니다.- 함수 ord() :ord() 함수 - 다음을 반환하는 내장 PHP 함수입니다. 문자열의 첫 번째 문자의 ASCII 값입니다.
- CHR() 함수:CHR() 함수는 PHP의 내장 함수로, ASCII 값을 문자로 변환하는 데 사용됩니다.
// 연관 배열 선언
$arr
=
array
(
`a`
= >
`인도`
,
`b`
= >
`미국`
,
`c`
= >
`러시아`
,
`d`
= >
`중국`
);
echo
" 다시 인덱싱하기 전의 배열 "
;
// foreach 루프를 사용하여 배열 요소 인쇄
foreach
(
$arr
as
$key
= >
$value
) {
echo
"색인:"
.
$key
.
"값:"
.
$value
.
""
;
}
// `p`에서 인덱스 설정
$New_start_index
=
` p`
;
// ord() 함수는 ASCII 값을 가져오는 데 사용됩니다.
// chr() 숫자를 ASCII로 변환하는 함수
$arr
=
array_combine
(범위(
$ New_start_index
,
chr (
count
(
$arr
) + (ord (
$New_start_index
) - 1))),
array_values ​​
(
$arr
));
echo
" 인덱싱 후 배열 "
;
// foreach 루프를 사용하여 배열 인쇄
foreach
(
$arr
as
$key
= >
$value ) {
echo
" 색인:"
.
$key
.
"값:"
.
$value
.
""
;
}
?>
종료:재인덱싱 전 배열 인덱스: a 값: 인도 인덱스: b 값: 미국 인덱스: c 값: Russia Index: d Value: China Array Index: p Value: India Index: q Value: America Index: r Value: Russia Index: s Value: China