$myArray = [];
Crea un array vuoto.
È possibile inviare valori sull'array in un secondo momento, in questo modo:
$myArray[] = "tree";
$myArray[] = "house";
$myArray[] = "dog";
A questo punto, $ myArray contiene "albero", "casa" e "cane". Ciascuno dei comandi precedenti aggiunge all'array, preservando gli elementi che erano già lì.
Essendo venuto da altre lingue, questo modo di aggiungere un array mi è sembrato strano. Mi aspettavo di dover fare qualcosa come $ myArray + = "dog" o qualcosa del genere ... o forse un metodo "add ()" come le raccolte di Visual Basic. Ma questa sintassi di aggiunta diretta è certamente breve e conveniente.
In realtà devi usare la funzione unset () per rimuovere elementi:
unset($myArray[1]);
... eliminerebbe "house" dall'array (le matrici sono basate su zero).
unset($myArray);
... distruggerebbe l'intero array.
Per essere chiari, la sintassi delle parentesi quadre vuote per l'aggiunta a un array è semplicemente un modo per dire a PHP di assegnare automaticamente gli indici a ciascun valore, invece di assegnare gli indici. Sotto le coperte, PHP sta effettivamente facendo questo:
$myArray[0] = "tree";
$myArray[1] = "house";
$myArray[2] = "dog";
Puoi assegnare gli indici tu stesso se vuoi, e puoi usare tutti i numeri che desideri. È inoltre possibile assegnare numeri di indice ad alcuni elementi e non ad altri. Se lo fai, PHP inserirà i numeri di indice mancanti, incrementando dal numero di indice più grande assegnato mentre procede.
Quindi se lo fai:
$myArray[10] = "tree";
$myArray[20] = "house";
$myArray[] = "dog";
... alla voce "cane" verrà assegnato un numero indice di 21. PHP non esegue la corrispondenza intelligente dei modelli per l'assegnazione incrementale dell'indice, quindi non saprà che potresti aver voluto assegnare un indice di 30 a "cane ". È possibile utilizzare altre funzioni per specificare il modello di incremento per un array. Non entrerò in questo qui, ma è tutto nei documenti PHP.
Saluti,
- = Cameron