Créa-blog

#100JoursPourCoder
Projet Créa-code

Ressources pour développeur web

Théme de la semaine : PHP version 8.5

PHP 8.5 : array_first et array_last pour trier vos tableaux

⏱️ Temps de lecture estimé : 14 minutes
Accueil PHP 8 PHP 8.5 : array_first et array_last pour trier vos tableaux

Quand on débute en PHP, il y a des petites choses qui paraissent anodines… jusqu’à ce qu’elles nous fassent perdre un temps fou. L’une d’elles, c’est l’accès rapide au premier ou au dernier élément d’un tableau. Qui n’a jamais écrit dix lignes de code juste pour récupérer le premier item d’une liste ? Vous voyez très bien de quoi je parle : on parcourt le tableau, on fait un foreach, on essaye un reset() ou un end(), puis on finit par se demander : “Mais il n’existe pas une fonction plus simple ?”.

Eh bien si ! Depuis PHP 8.1 (et désormais parfaitement intégré dans PHP 8.5), deux fonctions natives sont venues simplifier la vie de tous les développeurs : array_first() et array_last(). Leur nom parle de lui-même : la première renvoie le premier élément d’un tableau, la seconde le dernier.

Ces deux petites fonctions peuvent paraître banales, mais elles marquent une vraie évolution dans la manière de coder en PHP : elles rendent le code plus lisible, plus expressif, et surtout plus sûr. Car oui, il y avait déjà des façons de faire avant, mais elles étaient souvent source de confusion, notamment à cause du pointeur interne des tableaux PHP.

Dans ce guide, nous allons donc prendre le temps de comprendre, utiliser et maîtriser array_first() et array_last(), pas seulement en théorie, mais aussi à travers des exemples concrets.

L’objectif est simple : que vous repartiez d’ici en sachant exactement quand et comment les utiliser, quelles sont leurs différences avec les anciennes méthodes (reset()end()array_key_first(), etc.), et pourquoi elles méritent leur place dans votre boîte à outils de développeur moderne.

Si vous débutez en PHP, pas d’inquiétude : nous allons tout expliquer pas à pas, avec des exemples clairs et reproductibles. Et si vous êtes un habitué du langage, vous verrez comment ces fonctions peuvent rendre votre code plus élégant et plus fiable.

Avant de plonger dans le vif du sujet, prenons d’abord un petit moment pour revoir comment fonctionnent les tableaux en PHP, car comprendre leur mécanique interne est la clé pour saisir toute la logique de array_first() et array_last().

Comprendre les tableaux en PHP

Avant de parler d’« array_first » et d’« array_last », il faut poser les bases : qu’est-ce qu’un tableau en PHP ?

En PHP, un tableau (ou array) est une structure de données qui permet de stocker plusieurs valeurs dans une seule variable. Ces valeurs peuvent être indexées numériquement (comme une liste ordonnée) ou associatives (comme un dictionnaire de clés et de valeurs).

Prenons un exemple simple :

$fruits = ['pomme', 'banane', 'orange'];

Ici, $fruits[0] vaut 'pomme'$fruits[1] vaut 'banane', et $fruits[2] vaut 'orange'. PHP gère les index automatiquement, à partir de zéro. Mais on peut aussi créer un tableau associatif, comme ceci :

$utilisateur = [
    'nom' => 'Durand',
    'prenom' => 'Alice',
    'age' => 32
];

Dans ce cas, il n’y a pas d’index numériques : on accède à chaque valeur en utilisant sa clé. Par exemple : $utilisateur['prenom'] renverra 'Alice'.

Ce qu’il faut bien comprendre, c’est que les tableaux PHP ne sont pas des “tableaux” au sens strict du C ou du Java. Ce sont en réalité des tables de hachage : des structures qui associent des clés (numériques ou textuelles) à des valeurs.

Cela signifie que l’ordre des éléments n’est pas toujours garanti, surtout si l’on supprime ou ajoute des clés à la volée.

Et c’est justement là que les fonctions array_first() et array_last() prennent tout leur sens : elles permettent d’obtenir le premier ou le dernier élément réel du tableau, sans dépendre du pointeur interne, ni du type d’indexation.

Avant PHP 8.5, si vous vouliez obtenir le premier élément d’un tableau, vous deviez écrire :

$premier = reset($fruits);

Et pour le dernier :

$dernier = end($fruits);

Ces fonctions fonctionnaient, mais elles avaient un effet secondaire gênant : elles déplaçaient le pointeur interne du tableau. Autrement dit, si vous faisiez ensuite un foreach, vous risquiez de ne pas parcourir le tableau comme prévu.

C’est un détail que beaucoup de développeurs ont découvert un peu tard… parfois après des heures de débogage.

Heureusement, les nouvelles fonctions array_first() et array_last() changent la donne : elles sont immuables, c’est-à-dire qu’elles ne modifient pas le pointeur interne du tableau. Et ça, c’est une petite révolution dans la manipulation des tableaux PHP.

Découvrir et maîtriser array_first()

Commençons par la bonne nouvelle : array_first() est enfin une fonction native de PHP. Elle est disponible à partir de PHP 8.1 et pleinement stable dans PHP 8.5, ce qui veut dire que vous pouvez désormais l’utiliser sans dépendre de solutions artisanales.

À quoi sert array_first() ?

Comme son nom l’indique, elle permet d’obtenir le premier élément d’un tableau, sans toucher à son pointeur interne. Autrement dit, le tableau reste exactement dans le même état avant et après l’appel de la fonction.

C’est une différence majeure avec les fonctions historiques comme reset(), qui modifiaient ce pointeur.

La syntaxe est extrêmement simple :

$resultat = array_first($tableau);

Si le tableau est vide, array_first() renverra null (et non une erreur), ce qui rend la fonction plus sûre et plus prévisible.

Exemple 1 : premier élément d’un tableau simple

Imaginons une liste de prénoms :

$prenoms = ['Alice', 'Bernard', 'Chloé', 'David'];
$premier = array_first($prenoms);
echo $premier; // Affiche : Alice

Ici, la fonction renvoie simplement la première valeur du tableau, c’est-à-dire 'Alice'.
Le tableau d’origine n’est pas modifié. Vous pouvez le vérifier en affichant son contenu juste après :

print_r($prenoms);

Le résultat reste identique : les éléments sont dans le même ordre.

Exemple 2 : premier élément d’un tableau associatif

Voyons maintenant un tableau associatif, très courant dans le développement web :

$utilisateur = [
    'nom' => 'Dupont',
    'prenom' => 'Marie',
    'age' => 29
];

$premier = array_first($utilisateur);
echo $premier; // Affiche : Dupont

Ici, PHP renvoie la première valeur, pas la première clé.
Si vous voulez obtenir la clé correspondante, vous pouvez combiner cette fonction avec array_key_first() :

$premiereCle = array_key_first($utilisateur);
echo $premiereCle; // Affiche : nom

C’est une distinction importante à comprendre :

  • array_first() renvoie la valeur.
  • array_key_first() renvoie la clé.

Les deux se complètent parfaitement.

Exemple 3 : tableau vide

Un cas souvent négligé, mais qu’il faut connaître : le tableau vide.

$liste = [];
$premier = array_first($liste);
var_dump($premier); // Résultat : NULL

Ce comportement est très pratique, car vous pouvez facilement tester le retour de la fonction avant de continuer :

if ($premier === null) {
    echo "Le tableau est vide.";
}

Avant PHP 8.5, il fallait écrire des conditions plus lourdes, comme :

if (!empty($liste)) {
    $premier = reset($liste);
}

Ce qui faisait perdre en clarté et en lisibilité.

Exemple 4 : premier élément d’un tableau multidimensionnel

Supposons que vous ayez une liste d’articles, chacun représenté par un tableau :

$articles = [
    ['titre' => 'Découvrir PHP', 'auteur' => 'Alban'],
    ['titre' => 'Apprendre le CSS', 'auteur' => 'Lucie'],
    ['titre' => 'Introduction à MySQL', 'auteur' => 'Théo']
];

$premierArticle = array_first($articles);

print_r($premierArticle);

Ici, $premierArticle contient :

Array
(
    [titre] => Découvrir PHP
    [auteur] => Alban
)

Et bien sûr, vous pouvez accéder directement à un sous-élément :

echo $premierArticle['titre']; // Affiche : Découvrir PHP

C’est un cas très fréquent en développement : quand on récupère des données depuis une base SQL ou une API, le résultat est souvent un tableau d’enregistrements. Pouvoir accéder directement au premier élément avec une fonction simple comme array_first() rend le code plus clair et plus expressif.

Une fonction pure et sans effet de bord

L’un des grands avantages de array_first() est qu’elle n’affecte pas le pointeur interne du tableau.

Si vous écrivez ceci :

$couleurs = ['rouge', 'vert', 'bleu'];

$premier = array_first($couleurs);

foreach ($couleurs as $couleur) {
    echo $couleur . PHP_EOL;
}

Vous obtiendrez toujours :

rouge
vert
bleu

Alors qu’avec reset(), le comportement pouvait varier selon le contexte d’exécution, ce qui entraînait parfois des bugs étranges et difficiles à tracer.

Grâce à array_first(), cette grande question ne sera plus d’actualité :

“Pourquoi PHP ne propose pas une fonction toute simple pour le premier élément d’un tableau ? C’est quand même fou de devoir faire un reset() à chaque fois !”

Il faut croire que les développeurs du langage ont entendu cette frustration collective. Aujourd’hui, grâce à array_first(), ce genre de contournement appartient au passé.

Quand utiliser array_first() ?

Utilisez-la chaque fois que vous avez besoin du premier élément logique d’un tableau sans modifier quoi que ce soit. Quelques exemples typiques :

  • Récupérer le premier enregistrement d’un jeu de résultats SQL.
  • Obtenir le premier utilisateur connecté dans une liste de sessions.
  • Afficher le premier élément d’un carrousel d’images.

En résumé, array_first() apporte clarté, sécurité et modernité à votre code. C’est une fonction simple, mais qui reflète parfaitement la philosophie actuelle de PHP : plus expressive, plus prévisible, et plus agréable à lire.

Comprendre et utiliser array_last()

Si array_first() est la porte d’entrée d’un tableau, alors array_last() en est la sortie. Elle permet d’accéder facilement au dernier élément d’un tableau PHP, qu’il soit indexé ou associatif, sans modifier l’état interne du tableau.

Cette fonction a été ajoutée à PHP dans la même logique d’évolution que array_first(), à partir de PHP 8.1, et elle est aujourd’hui pleinement stabilisée dans PHP 8.5.

C’est une petite révolution pour tous les développeurs qui en avaient assez d’utiliser des contournements comme end() ou array_slice() juste pour récupérer le dernier élément d’une liste.

Syntaxe de base

La syntaxe est aussi simple qu’on peut l’espérer :

$resultat = array_last($tableau);

Et tout comme array_first(), si le tableau est vide, la fonction renverra null.

Exemple 1 : dernier élément d’un tableau simple

Prenons une liste de nombres :

$notes = [12, 14, 15, 17, 19];
$derniere = array_last($notes);
echo $derniere; // Affiche : 19

Ici, le résultat est le dernier élément du tableau, c’est-à-dire 19. Et encore une fois, le tableau d’origine n’est pas modifié : il reste intact.

Exemple 2 : dernier élément d’un tableau associatif

Voyons un tableau associatif un peu plus réaliste :

$produit = [
    'nom' => 'Clavier mécanique',
    'marque' => 'Logitech',
    'prix' => 129.99
];

$dernier = array_last($produit);
echo $dernier; // Affiche : 129.99

La fonction ne renvoie pas la clé ('prix'), mais bien la valeur du dernier élément.
Et comme pour array_first(), vous pouvez récupérer la clé correspondante grâce à :

$derniereCle = array_key_last($produit);
echo $derniereCle; // Affiche : prix

Cela peut être très utile si vous souhaitez savoir quel champ se trouve à la fin d’un tableau, notamment lorsqu’il s’agit d’un tableau généré automatiquement.

Exemple 3 : tableau vide

$panier = [];
$dernier = array_last($panier);
var_dump($dernier); // NULL

Une fonction comme celle-ci est donc très pratique dans des cas de logique conditionnelle :

Formation web et informatique - Alban Guillier - Formateur

Des formations informatique pour tous !

Débutant ou curieux ? Apprenez le développement web, le référencement, le webmarketing, la bureautique, à maîtriser vos appareils Apple et bien plus encore…

Formateur indépendant, professionnel du web depuis 2006, je vous accompagne pas à pas et en cours particulier, que vous soyez débutant ou que vous souhaitiez progresser. En visio, à votre rythme, et toujours avec pédagogie.

Découvrez mes formations Qui suis-je ?
if ($dernier === null) {
    echo "Le panier est vide.";
} else {
    echo "Dernier article ajouté : " . $dernier;
}

En quelques lignes, vous rendez votre code plus robuste, plus lisible, et surtout plus compréhensible pour la personne qui le relira (parfois vous-même dans six mois).

Exemple 4 : tableau multidimensionnel

Prenons un cas concret de développement web : la récupération d’un historique de connexions.

$connexions = [
    ['date' => '2025-10-01', 'ip' => '192.168.0.5'],
    ['date' => '2025-10-15', 'ip' => '192.168.0.7'],
    ['date' => '2025-11-01', 'ip' => '192.168.0.9']
];

$derniereConnexion = array_last($connexions);
print_r($derniereConnexion);

Résultat :

Array
(
    [date] => 2025-11-01
    [ip] => 192.168.0.9
)

On obtient donc directement la dernière entrée du tableau, c’est-à-dire la dernière connexion enregistrée. Ce genre de cas est très fréquent dans les applications : pour afficher le dernier message, la dernière commande, ou le dernier événement enregistré.

Les anciennes méthodes (et leurs limites)

Avant PHP 8.5, pour obtenir le dernier élément d’un tableau, on utilisait la fonction end(). Mais celle-ci présentait deux gros inconvénients :

  1. Elle modifiait le pointeur interne du tableau, ce qui pouvait perturber les boucles suivantes.
  2. Elle nécessitait un tableau non vide — sinon, elle renvoyait false, ce qui n’était pas toujours intuitif.

Prenons un exemple simple pour comparer :

$couleurs = ['rouge', 'vert', 'bleu'];

// Ancienne méthode
$dernier = end($couleurs);

// Nouvelle méthode
$dernierPropre = array_last($couleurs);

Les deux affichent 'bleu', mais dans le premier cas, si vous faites ensuite un foreach sur $couleurs, l’ordre de parcours peut être affecté. Et si le tableau est vide, end() renverra false, ce qui peut provoquer des confusions avec une vraie valeur booléenne.

Autrement dit : array_last() est plus sûreplus propre, et surtout plus expressive.

Exemple 5 : combinaison avec array_first()

Là où ces deux fonctions deviennent vraiment intéressantes, c’est quand on les utilise ensemble.

Imaginons que vous deviez comparer le premier et le dernier élément d’une liste :

$temperatures = [14, 16, 18, 22, 25];

$premiere = array_first($temperatures);
$derniere = array_last($temperatures);

echo "Température de début de journée : $premiere°C" . PHP_EOL;
echo "Température de fin de journée : $derniere°C";

Affichage :

Température de début de journée : 14°C
Température de fin de journée : 25°C

C’est simple, lisible et très intuitif. Avant PHP 8.5, il fallait écrire trois ou quatre lignes de plus, parfois avec des variables intermédiaires pour éviter les effets de bord de reset() et end().

Un mot sur la performance

Certains développeurs se demandent si array_first() et array_last() ne sont pas plus lentes que reset() et end(). La réponse est : non, ou plutôt pas de façon significative.

En interne, PHP optimise ces fonctions pour accéder directement au premier ou au dernier élément du tableau sans le parcourir entièrement. Cela signifie qu’elles sont tout aussi performantes, voire plus stables, car elles n’altèrent pas le pointeur interne.

Et surtout, elles rendent votre code plus clair. Et un code lisible, c’est un code plus facile à maintenir… ce qui, dans le monde réel, vaut bien plus que quelques microsecondes de gain.

Avant, pour récupérer le dernier produit ajouté au panier, plusieurs solutions étaient possible. Certains faisaient un array_pop(), d’autres un count($array)-1, on pouvait même créé une fonction “get_last_item_of_cart()” à la main.

Avec array_last(), PHP a enfin décidé de faire les choses comme les humains. Et c’est exactement ça : avec ces nouvelles fonctions, PHP se rapproche d’une syntaxe naturelle, presque littéraire.

Quand utiliser array_last() ?

Elle est utile dès qu’on veut accéder au dernier élément d’une liste — que ce soit le dernier enregistrement d’un tableau, la dernière commande, le dernier message ou encore la dernière mise à jour d’un fichier de log.

Quelques contextes typiques :

  • Récupérer le dernier commentaire d’un utilisateur.
  • Obtenir la dernière ligne d’un fichier CSV importé.
  • Vérifier la dernière valeur d’une série numérique (par exemple pour des statistiques).

En somme, array_last() est à la fois pratique, expressive et sécurisée. Elle s’inscrit dans la volonté de PHP 8.5 d’offrir une syntaxe plus cohérente, plus prévisible, et plus agréable à lire.

Comparaison, astuces et usages concrets de array_first() et array_last()

Maintenant que vous connaissez la théorie et la pratique de ces deux nouvelles fonctions, prenons un peu de recul. Car comprendre quand et pourquoi les utiliser, c’est ce qui fera de vous un développeur efficace et réfléchi.

Avant PHP 8.5 : un terrain miné de contournements

Pour bien comprendre, récapitulons. Pendant longtemps, pour accéder au premier ou au dernier élément d’un tableau, on devait bricoler. PHP proposait bien reset() et end(), mais ces fonctions avaient un inconvénient majeur : elles modifiaient le pointeur interne du tableau.

Prenons un exemple concret :

$animaux = ['chat', 'chien', 'lapin', 'hamster'];

$premier = reset($animaux);
$dernier = end($animaux);

foreach ($animaux as $animal) {
    echo $animal . PHP_EOL;
}

En apparence, rien de grave. Mais dans un contexte plus complexe — par exemple, si le tableau est passé à une fonction, ou s’il est réutilisé ensuite — ces manipulations peuvent perturber le comportement de foreach ou de certaines fonctions de tri.

Le pointeur interne, c’est un peu comme un curseur invisible : il “se souvient” d’où PHP en est dans le tableau. Quand reset() ou end() le déplacent, c’est comme si vous repreniez la lecture d’un livre mais que le marque-page avait été déplacé par quelqu’un d’autre.

C’est là que array_first() et array_last() changent tout : elles sont pures, c’est-à-dire qu’elles n’ont aucun effet de bord. Vous obtenez votre résultat sans altérer le tableau.

Tableau comparatif : anciennes vs nouvelles méthodes

ObjectifAncienne méthodeNouvelle méthodeEffet de bord
Premier élémentreset($array)array_first($array)Oui (pointeur déplacé)
Dernier élémentend($array)array_last($array)Oui (pointeur déplacé)
Première cléarray_key_first($array)(identique)Non
Dernière cléarray_key_last($array)(identique)Non

Vous le voyez : array_first() et array_last() complètent parfaitement array_key_first() et array_key_last(). Ensemble, elles forment une API logique, cohérente et sans piège.

Astuce 1 : utilisation combinée pour parcourir des extrémités

Il arrive souvent de devoir traiter uniquement les bords d’un tableau. Par exemple, afficher la première et la dernière actualité d’un site, sans montrer tout le reste.

$actus = [
    ['titre' => 'PHP 8.5 est sorti !', 'date' => '2025-11-01'],
    ['titre' => 'Nouveau framework open source', 'date' => '2025-11-02'],
    ['titre' => 'Tendances du web 2026', 'date' => '2025-11-03']
];

$premiere = array_first($actus);
$derniere = array_last($actus);

echo "Première actu : " . $premiere['titre'] . PHP_EOL;
echo "Dernière actu : " . $derniere['titre'];

Ce genre de code était autrefois un peu verbeux. Aujourd’hui, il devient naturel à lire : même sans connaître PHP, on comprend ce qu’il fait.

Astuce 2 : une meilleure alternative à array_pop() et array_shift()

Avant ces nouvelles fonctions, pour obtenir le premier ou le dernier élément, certains utilisaient :

  • array_shift($array) pour retirer et renvoyer le premier élément,
  • array_pop($array) pour retirer et renvoyer le dernier.

Ces fonctions fonctionnaient, certes, mais elles modifiaient le tableau en supprimant les éléments extraits.

Par exemple :

$valeurs = [1, 2, 3, 4];

$debut = array_shift($valeurs); // Supprime 1
$fin = array_pop($valeurs);     // Supprime 4

print_r($valeurs); // Ne contient plus que [2, 3]

Dans certains cas, c’est ce qu’on veut, mais dans beaucoup d’autres, non. array_first() et array_last() permettent d’obtenir les mêmes informations sans détruire votre tableau.

On peut dire que ces nouvelles fonctions sont à la fois plus sûres et plus respectueuses de vos données.

Astuce 3 : utilisation dans des traitements conditionnels

Imaginons un script de journalisation d’événements :

$logs = [
    '2025-10-01 10:00:00 - Serveur démarré',
    '2025-10-01 10:05:12 - Nouvelle connexion',
    '2025-10-01 10:06:45 - Alerte CPU'
];

$dernier = array_last($logs);
$premier = array_first($logs);

echo "Premier événement : $premier" . PHP_EOL;
echo "Dernier événement : $dernier";

C’est simple, mais dans une vraie application, ces deux lignes peuvent suffire à afficher un résumé de l’activité récentesur un tableau de bord, sans boucler sur tout le contenu.

Astuce 4 : attention à l’ordre des clés associatives

Une petite subtilité mérite d’être rappelée. En PHP, l’ordre des éléments d’un tableau associatif dépend de l’ordre d’insertion. Cela signifie que array_first() et array_last() se basent sur cet ordre, pas sur un tri alphabétique des clés.

Regardez :

$personne = [
    'nom' => 'Martin',
    'age' => 42,
    'ville' => 'Troyes'
];

echo array_first($personne); // Martin
echo array_last($personne);  // Troyes

Mais si vous ajoutez ou supprimez des éléments à différents moments, cet ordre peut changer. C’est pourquoi, si vous avez besoin d’un ordre spécifique (par exemple, trié par valeur ou par clé), il est préférable d’utiliser une fonction de tri avant.

Exemple complet : un mini tableau de bord

Pour clôturer cette partie pratique, voyons un cas concret : un mini script PHP qui affiche un résumé automatique des ventes du jour.

$ventes = [
    ['client' => 'Durand', 'montant' => 49.90, 'heure' => '09:15'],
    ['client' => 'Petit', 'montant' => 89.00, 'heure' => '11:42'],
    ['client' => 'Leclerc', 'montant' => 129.90, 'heure' => '15:27']
];

$premiereVente = array_first($ventes);
$derniereVente = array_last($ventes);

echo "Première vente du jour : " . $premiereVente['client'] . " à " . $premiereVente['heure'] . PHP_EOL;
echo "Dernière vente enregistrée : " . $derniereVente['client'] . " à " . $derniereVente['heure'];

Résultat à l’écran :

Première vente du jour : Durand à 09:15
Dernière vente enregistrée : Leclerc à 15:27

En trois lignes, vous avez un résumé clair, lisible, et sans effet secondaire. C’est précisément ce genre de petit confort de code que PHP 8.5 nous offre.

Astuce 5 : quand ne pas les utiliser

Pour être complet, précisons aussi que ces fonctions ne sont pas toujours nécessaires. Si vous avez besoin de parcourir un tableau complet, inutile de les utiliser à chaque tour de boucle : elles n’ont pas été conçues pour ça.

De même, si votre tableau est très grand et que vous ne manipulez qu’un index précis (par exemple $tableau[count($tableau) - 1]), cette dernière solution restera légèrement plus rapide. Mais dans la plupart des cas, la différence est négligeable, et la clarté du code prime.

Le PHP moderne, enfin simple et lisible

Si l’on regarde l’évolution de PHP depuis ses débuts, on remarque un vrai virage : le langage a quitté son image de “bricolage rapide pour sites web” pour devenir un outil mature, structuré et élégant.

L’arrivée de fonctions comme array_first() et array_last() n’a peut-être pas fait la une des journaux, mais elle illustre parfaitement cette transformation silencieuse : PHP devient plus intuitif et plus proche de la logique naturelle des développeurs.

Ces deux fonctions ne sont pas seulement là pour “raccourcir” du code. Elles incarnent une philosophie : celle d’un code expressifprévisible, et surtout humainement lisible. Quand on lit une ligne comme :

$dernierMessage = array_last($messages);

On comprend immédiatement ce qu’elle fait, sans commentaire, sans détour, sans ambiguïté. Et c’est exactement ce que devrait être un bon code : un texte que même un collègue qui découvre votre projet comprend au premier coup d’œil.

Un gain de clarté, un gain de temps

Là où reset() et end() obligeaient à se souvenir des effets secondaires, array_first() et array_last() reposent sur une promesse : aucune surprise.
Elles rendent le code plus sûr, plus propre et plus compatible avec les pratiques modernes (comme la programmation fonctionnelle ou les frameworks récents).

Et au-delà de la technique, il y a un véritable gain de confort mental. Quand on code, chaque micro-doute, chaque ligne “pas claire” ajoute une petite charge cognitive. Ces nouvelles fonctions suppriment une partie de ce bruit. Elles vous permettent de vous concentrer sur le sens de votre programme, pas sur ses détails internes.

Le PHP d’aujourd’hui, c’est aussi ça

Pendant longtemps, on disait que PHP était un “langage permissif”, où tout marchait “plus ou moins”. Mais depuis quelques versions, on assiste à une montée en puissance : des types plus stricts, des exceptions mieux gérées, des fonctions pures, des syntaxes modernes inspirées d’autres langages matures.

PHP 8.5 continue sur cette voie. Et array_first() / array_last() en sont un symbole discret mais fort : des outils simples, lisibles et cohérents, qui rendent le code plus expressif.

Si vous développez un projet web aujourd’hui, que ce soit un site vitrine, une API ou une application complexe, intégrer ces nouvelles fonctions à vos habitudes vous aidera à gagner du tempséviter des erreurs et rendre votre code plus durable.


On pourrait penser qu’apprendre deux fonctions aussi simples ne change pas grand-chose. Mais en réalité, c’est souvent ce genre de petites évolutions qui, accumulées, transforment profondément notre manière de coder.

Alors oui, array_first() et array_last() ne feront pas de vous un meilleur développeur du jour au lendemain. Mais elles vous rappelleront à chaque utilisation que le code peut être à la fois puissant et lisible.

Et peut-être qu’un jour, un développeur débutant lira votre code et se dira :

“Tiens, c’est clair, c’est propre… j’aimerais bien coder comme ça.”

À ce moment-là, vous saurez que ces deux petites fonctions n’étaient pas si anodines que ça.


Cet article vous a permis de découvrir les fonctions array_first() et array_last() introduites dans PHP 8.5, deux nouveautés qui facilitent la manipulation des tableaux tout en renforçant la lisibilité et la sécurité de votre code. Que vous travailliez sur des projets personnels ou professionnels, adopter ces fonctions, c’est entrer dans la logique du PHP moderne : simple, lisible, fiable.