PHP Array Ordinamento e funzioni utili

P
Array PHP
Metodo di richiesta in PHP e Super Global in PHP

Nel precedente tutorial sugli array PHP. Abbiamo imparato a dichiarare e iterare array indicizzati, associativi e multidimensionali. Ora siamo in grado di approfondire l'ordinamento degli array PHP. Oltre a questo, lavoreremo anche con funzioni utili che rendono davvero super facile lavorare con gli array.

Funzioni di ordinamento di array in PHP

In PHP 8, abbiamo le seguenti funzioni per ordinare un array.

Nome della funzioneOrdina per ordine
ordinare() Ordine ascendente
ordina ()Ordine decrescente
assortire()Matrici associative in ordine crescente, secondo il valore
ksort()Matrici associative in ordine crescente, secondo la chiave
ordinare ()Ordine decrescente, secondo il valore
krsort()Ordine decrescente, secondo la chiave
Tabella delle funzioni di ordinamento degli array in PHP

1. Ordina (array, sort_type)

La funzione di ordinamento dispone gli elementi di un array in ordine crescente (dal più basso al più alto). Se l'array contiene un solo elemento, restituirà lo stesso array. Restituisce vero in caso di successo e falso in caso di fallimento.

Per esempio

<?php
$num = array(4, 6, 2, 12, 11);
sort($num);
?>

2. rSort(array, sort_type)

rSort è l'inverso della funzione di ordinamento. Dispone gli elementi di un array in forma decrescente (dal più alto al più basso). Se l'array contiene un solo elemento, restituisce lo stesso array.

<?php
$num=array(4,16,12,20,11);
rsort($num);
?>

3. asort(array, sort_type)

La funzione asort dispone gli elementi di un array associativo in ordine crescente in base al valore delle chiavi. Se l'array è costituito da una singola chiave e coppia di valori, restituisce lo stesso array.

Per esempio

<?php
$age=array("Jawad"=>"23","Abdullah"=>"14","Adil"=>"19");
asort($age);
?>

4. ksort(array, sort_type)

La funzione ksort dispone anche gli elementi di un array associativo in ordine crescente ma secondo le chiavi. Se l'array è costituito da una singola chiave e coppia di valori, restituisce lo stesso array.

Per esempio

<?php
$age=array("Jawad"=>"23","Abdullah"=>"14","Adil"=>"19");
ksort($age);
?>

Il secondo parametro nelle funzioni di ordinamento è sort_type. Sono disponibili le seguenti opzioni. Le opzioni decidono come confrontare gli elementi dell'array.

5. arsort(array, sort_type)

La funzione assort dispone gli elementi di un array associativo in ordine decrescente in base ai valori. Se l'array è costituito da una singola chiave e coppia di valori, restituisce lo stesso array.

Per esempio

<?php
$age=array("Jawad"=>"23","Abdullah"=>"14","Adil"=>"19");
asort($age);
?>

6. krsort(array, sort_type)

La funzione krsort dispone anche gli elementi di un array associativo in ordine decrescente ma secondo le chiavi. Se l'array è costituito da una singola chiave e coppia di valori, restituisce lo stesso array.

Per esempio

<?php
$age=array("Jawad"=>"23","Abdullah"=>"14","Adil"=>"19");
ksort($age);
?>

Il secondo parametro nelle funzioni di ordinamento è sort_type. Sono disponibili le seguenti opzioni. Le opzioni decidono come confrontare gli elementi dell'array.

Tipo di ordinamentoDESCRIZIONE
0 = ORDINA_REGOLAREPredefinito. Confronta gli articoli normalmente (non cambiare tipo)
1 = ORDINA_NUMERO Confronta gli articoli numericamente
2 = STRINGA_ORDINEConfronta gli elementi come stringhe
3 = ORDINA_STRINGA_LOCALEConfronta gli elementi come stringhe, in base alle impostazioni locali correnti
4 = ORDINA_NATURALEConfronta gli elementi come stringhe usando l'ordinamento naturale
5 = ORDINA_BANDIERA_CASO
Opzioni di ordinamento degli array nella funzione sort e rsort

Oltre a queste funzioni di ordinamento di array di base e integrate, l'utente può anche definire la propria funzione di ordinamento in PHP. Quindi, in questa sezione imparerai a conoscere le funzioni usort, uasort e uksort in PHP.

usort(array, my_sorting_function)

La funzione usort accetta due parametri. Il primo parametro è l'array da ordinare e il secondo parametro è la funzione definita dall'utente da ordinare.

Per esempio

<?php
function my_sort($a,$b)
{
if ($a==$b) return 0;
return ($a<$b)?-1:1;
}

$a=array(4,2,8,6);
usort($a,"my_sort");
?>

uasort(array, user_define_function)

Ordina una matrice o una matrice associativa in base alla funzione di definizione dell'utente. La funzione uasort esegue l'ordinamento in base al valore dell'array associativo. Per le chiavi, abbiamo la funzione uksort, che viene fornita di seguito.

Per esempio

<?php
function my_sort($a,$b)
{
if ($a==$b) return 0;
return ($a<$b)?-1:1;
}

$arr=array("a"=>4,"b"=>2,"c"=>8,"d"=>6);
uasort($arr,"my_sort");
?>

uksort(array, funzione_definita dall'utente)

Ordina un array associativo utilizzando una funzione definita dall'utente. uksort esegue l'ordinamento in base alle chiavi dell'array associativo.

Per esempio

<?php
function my_sort($a,$b)
{
if ($a==$b) return 0;
return ($a<$b)?-1:1;
}

$arr=array("a"=>4,"b"=>2,"c"=>8,"d"=>6);
uksort($arr,"my_sort");
?>

Utili funzioni di array in PHP

somma_array la funzione restituisce la somma degli elementi dell'array. Questa funzione accetta sia array indicizzati che array associativi. Nel caso di un array associativo, restituisce la somma dei valori.

Per esempio

<?php
$a=array(5,15,25);
echo array_sum($a);
?>

giunzione_array La funzione rimuove gli elementi specificati dall'array e li sostituisce con nuovi elementi. Ricorda che la funzione array_splice non conserva le chiavi nel valore restituito.

Per esempio

<?php
$a1=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow");
$a2=array("a"=>"purple","b"=>"orange");
print_r(array_splice($a1,0,2,$a2));
?>

La funzione array_search cerca semplicemente un array per l'elemento. Se l'elemento viene trovato, restituisce la sua chiave. Questa funzione accetta tre parametri.

array_search(valore, matrice, rigoroso)

Il terzo parametro rigoroso può essere vero o falso. Tuttavia, se è vero, il valore da cercare nell'array deve essere dello stesso tipo di dati. Cioè, la stringa "5" e il numero 5 non sono gli stessi nel caso di strict = true. Tuttavia, se strict è impostato su false, array_search considererà "5" e 5 uguali.

Per esempio

<?php
$a=array("a"=>"red","b"=>"green","c"=>"blue");
echo array_search("red",$a);
?>

array_reverse restituisce un array con elementi nell'ordine inverso. Se il secondo parametro è impostato su true, le chiavi vengono conservate nell'output.

Per esempio

<?php
$a=array("a"=>"Volvo","b"=>"BMW","c"=>"Toyota");
print_r(array_reverse($a));
?>

array_push(matrice, valore1, valore2, …) la funzione spinge gli elementi nell'array. È possibile inserire più elementi in un array specificandoli nel parametro della funzione, a partire dal secondo parametro. H Ogni valore è separato da una virgola e il valore può anche essere un array.

Per esempio

<?php
$a=array("red","green");
array_push($a,"blue","yellow");
print_r($a);
?>

array_pop() rimuove l'ultimo elemento dell'array.

Per esempio

<?php
$a=array("red","green","blue");
array_pop($a);
print_r($a);
?>

Per il riferimento all'ordinamento degli array ufficiale di PHP 8, fare clic su per saperne di più, clicca qui.

Array PHP
Metodo di richiesta in PHP e Super Global in PHP

Aggiungi un commento

Rete di tutor

Condividi questo

Impara PHP dalla A alla Z