reindexação de um array pode ser feita com alguma função integrada. Estas funções são:
- função array_combine() :Função array_combine() - é uma função embutida no PHP que é usada para combinar dois arrays e crie um novo array usando um array para chaves e outro array para valores. Ou seja, todos os elementos de um array serão as chaves do novo array, e todos os elementos do segundo array serão os valores ‚Äã‚Äão deste novo array.
- Função range(): função range() - é uma função embutida no PHP que é usada para criar um array de elementos de qualquer tipo, como inteiros, alfabetos em um determinado intervalo (de baixo para alto), ou seja, o primeiro elemento da lista é considerado baixo e o último é considerado alto.
- count() Função : função count() é usado para contar os elementos atuais em um array. A função pode retornar 0 para uma variável que foi definida como uma matriz vazia. Além disso, para uma variável que não está definida, a função retorna 0.
- array_values ‚Äã‚Äã() Função :Esta função é usada para obter um array de valores ‚Äã‚Äãde outro array, que pode conter pares chave-valor ou apenas valores. A função cria outro array que armazena todos os valores ‚Äã‚Äãe por padrão atribui chaves numéricas aos valores.
Usaremos array_values ‚Äã‚Äã() para obter todos os valores ‚Äã‚Äãof array e range() para criar elementos de array que queremos usar como novas chaves ou novo índice de array (reindexação). Em seguida, a função array_combine() combinará a matriz como chaves e valores.
Exemplo 1:
// Declarar um array associativo
$arr
=
array
(
0 = >
`Tony`
,
1 = >
`Stark`
,
2 = >
`Ferro`
,
3 = >
`Homem`
) ;
echo
" Array antes de reindexar "
;
< br>// Usando um loop foreach para imprimir elementos de array
foreach
(
$arr
as
$key
= >
$value
) {
echo
"Índice:"
.
$key
.
"Valor:"
.
$value
.
""
;
}
// Defina um número sequencial de três e
$New_start_index
= 3;
$arr
=
array_combine
(intervalo (
$New_start_index
,
count
(
$arr
) + (
$New_start_index
- 1)),
array_values ​​ (
$arr
));
echo
" Array após reindexação "
;
// Usando um loop foreach para imprimir elementos de array
code> foreach
(
$arr
as
$key
= >
$value
) {
echo
"Index:"
.
$key
.
"Valor:"
.
$value
.
""
;
}
?>
Sair: Array antes da reindexação Índice: 0 Valor: Tony Index: 1 Valor: Stark Index: 2 Valor: Iron Index: 3 Valor: Man Array após a reindexação Índice: 3 Valor: Tony Index: 4 Valor: Stark Index : 5 Valor: Ferro Índice: 6 Valor: Man
Exemplo 2.Adicione alguns dados ao início do array e então extraia o array do índice.
// Declarar um array associativo
$arr
=
array
(
0 = >
`Tony`
,
1 = >
`Stark`
,
2 = >
`Ferro`
,
3 = >
`Homem`
);
echo
" Array antes de reindexar "
;
// Usando um loop foreach para imprimir elementos de array
foreach
(
$arr
as
$key
= >
$value
) {
echo
"Índice:"
.
$key
.
"Valor:"
.
$value
.
""
;
}
// Definir um número sequencial de três
$New_start_index
= 3;
$raw_data
= intervalo (0,
$New_start_index
- 1);
// Adiciona dados ao início do array
foreach
(
$raw_data
as
$key
= >
$value
) {
array_unshift
(
$arr
,
$value );
}
$arr
=
array_values ​​
(
$arr
);
// Remova o índice desnecessário para que comecemos em 10 $arr
=
array_slice
(
$arr
,
$New_start_index
,
count
(
$arr
), true);
echo
"Array após reindexação"
;
// Usando um loop foreach para imprimir um array
foreach
(
$arr
as
$key
= >
$value ) {
echo
"Índice:"
.
$key
.
"Valor:"
.
$value
.
""
;
}
?>
Sair:Array antes da reindexação Índice: 0 Valor: Tony Index: 1 Valor: Stark Index: 2 Valor: Iron Index: 3 Valor: Man Array após a reindexação Índice: 3 Valor: Tony Index: 4 Valor: Stark Index: 5 Valor : Iron Index: 6 Value: Man
Neste exemplo, primeiro adicionamos alguns dados ao array, e para isso fazemos novamente com um loop, e depois apagamos os dados que adicionamos, então esse também não é o melhor escolha para reindexar a matriz ... Este método não é adequado para reindexar chaves alfabéticas.Exemplo 3:Este exemplo reindexa uma matriz alfabética ` p '. Duas funções adicionais são usadas para reindexar alfabetos:- Função ord() :A função ord() - é uma função interna do PHP que retorna o Valor ASCII do primeiro caractere de uma string.
- CHR() Função:A função CHR() é uma função embutida no PHP que é usado para converter um valor ASCII em um caractere.
// Declarar um array associativo
$arr
=
array
(
`a`
= >
`Índia`
,
`b`
= >
`América`
,
`c`
= >
`Rússia`
,
`d`
= >
`China`
);
echo
" Array antes de reindexar "
;
// Usando um loop foreach para imprimir elementos de array
code> foreach
(
$arr
as
$key
= >
$value
) {
echo
"Index:"
.
$key
.
"Valor:"
.
$value
.
""
;
}
// Definir índice de ` p `
$New_start_index
=
` p`
;
// A função ord() é usada para obter o valor ascii
// chr() função para converter um número para ASCII
$arr
=
array_combine
(range (
$ New_start_index
,
chr (
count
(
$arr
) + (ord (
$New_start_index
) - 1))),
array_values ​​
(
$arr
));
echo
" Array após reindexação "
;
// Usando um loop foreach para imprimir um array
foreach
(
$arr
as
$key
= >
$value ) {
echo
" Índice:"
.
$key
.
"Valor:"
.
$value
.
""
;
}
?>
Sair:Array antes da reindexação Índice: a Valor: Índia Índice: b Valor: América Índice: c Valor: Índice da Rússia: d Valor: China Array após reindexação Índice: p Valor: Índice da Índia: q Valor: Índice da América: r Valor: Índice da Rússia: s Valor: China