Récupérer la première et la dernière clé d'un tableau
Avant php 7.0 (😱), pour récupérer la première et la dernière clé d'un tableau, vous pouvez écrire :
$var = [
"a" => "John",
"b" => "Jane",
"c" => "Baby",
];
$first = isset(array_keys($var)[0]) ? array_keys($var)[0] : null;
// $first = "a"
$last = isset(array_keys($var)[count($var) - 1]) ? array_keys($var)[count($var) - 1] : null;
// $last = "c"À partir de php 7.0, vous pouvez largement simplifier en écrivant :
$var = [
"a" => "John",
"b" => "Jane",
"c" => "Baby",
];
$first = array_keys($var)[0] ?? null;
// $first = "a"
$last = array_keys($var)[count($var) - 1] ?? null;
// $last = "c"Mais depuis PHP 7.3, il existe deux nouvelles méthodes pour aller droit au but : array_key_first et array_key_last
$var = [
"a" => "John",
"b" => "Jane",
"c" => "Baby",
];
$first = array_key_first($var);
// $first = "a"
$last = array_key_last($var);
// $last = "c"Ces deux méthodes retournent la clé si le tableau n'est pas vide, null sinon.
null ?Savez-vous qu'en PHP, vous pouvez déclarer par exemple
$var = [
null => "John",
"b" => "Jane",
"c" => "Baby",
];Dans cet exemple, la méthode array_key_first retournera non pas null mais une chaîne vide "". D'ailleurs la valeur John sera affichée si vous faites echo $var[""] !
Et pour aller encore plus loin, si vous écrivez :
$var = [
null => "John",
"b" => "Jane",
"" => "Baby",
];finalement le tableau ne contiendra que deux valeurs :
$var = [
null => "Baby",
"b" => "Jane",
];Pour résumer : éviter les valeurs null et les chaînes vides dans les clés de vos tableaux (sauf si vous savez vraiment ce que vous faites) !
J’ai préparé un guide pratique avec une dizaine de conseils essentiels pour poser de bonnes bases.
👉 Bonnes pratiques, astuces spécifiques à PHP, exemples concrets… tout y est pour prendre de suite les bonnes habitudes.