Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Pour aller plus loin

Le livre s’arrĂȘte ici, mais le langage continue d’évoluer, et le projet qu’on vous a confiĂ© aussi. Quelques sources vous permettent de rester Ă  jour, et aucune n’appartient Ă  un Ă©diteur commercial.

Le manuel

php.net est la référence, et une bonne référence : chaque fonction a sa page, avec sa signature, son historique par version, et des exemples qui tournent. Les notes contribuées par les utilisateurs sous chaque page sont inégales, alors que le texte officiel au-dessus est fiable. Mettez en favori les guides de migration, un par version (php.net/manual/fr/migration85.php et ses voisins) : ils listent chaque dépréciation et chaque nouveauté, et lire celui de la prochaine version de votre projet est la préparation de montée de version la moins chÚre que vous ferez.

Le wiki des RFC

Chaque changement du langage passe par une proposition publique, une discussion sur la liste de diffusion internals, et un vote des dĂ©veloppeurs du cƓur. Les propositions vivent sur wiki.php.net/rfc, acceptĂ©es, refusĂ©es et en cours. Lire les RFC acceptĂ©es d’une version vous dit non seulement ce qui a changĂ©, mais pourquoi, avec les alternatives Ă©cartĂ©es et les arguments contre. Quand une fonctionnalitĂ© paraĂźt Ă©trange, sa RFC explique en gĂ©nĂ©ral la contrainte qui l’a rendue ainsi.

La Fondation et le FIG

La PHP Foundation finance les dĂ©veloppeurs du cƓur qui maintiennent l’interprĂ©teur et accompagne la direction du langage. Son blog rend compte des versions et des chantiers en cours. Le PHP-FIG (Framework Interoperability Group) publie les PSR et le PER Coding Style, les interfaces et conventions qui permettent Ă  des bibliothĂšques d’auteurs diffĂ©rents de fonctionner ensemble. Quand une base de code mentionne PSR-quelque chose, le site du FIG a la spĂ©cification en deux pages.

Le framework de votre projet

La plupart des projets PHP reposent sur un framework, et la documentation du framework est l’endroit oĂč l’apprendre. Frameworks complets : CakePHP, Laminas, Laravel, Symfony, Yii. Micro-frameworks bĂątis autour des middlewares PSR-15 : Mezzio, Slim. Plateformes de contenu avec leurs propres conventions : Drupal, Joomla, TYPO3, WordPress.

Une habitude paie dĂšs le premier jour : quand vous lisez du code de framework, triez ce que vous voyez entre ce qui relĂšve du langage et ce qui relĂšve du framework. Un constructeur promu readonly, une Ă©numĂ©ration dans un match ou une chaĂźne de ?-> sont du PHP, et ils veulent dire la mĂȘme chose partout. Une façade, une liaison dans un conteneur de services ou un __call magique qui redirige vers un constructeur de requĂȘtes appartiennent au framework, et c’est sa documentation qui les explique. Ceux qui confondent les deux finissent par croire que PHP est ce Ă  quoi leur premier framework l’a fait ressembler.

Un chemin plus long

Ce livre a sautĂ© les bases volontairement. Si vous voulez la version qui part de zĂ©ro, avec un petit jeu, un outil en ligne de commande et une application web construite sans framework, le volume compagnon, The PHP Book, prend ce chemin Ă  un rythme plus lent, et il est publiĂ© depuis le mĂȘme dĂ©pĂŽt que celui-ci.

Au-delĂ  de l’écrit, PHP a des groupes d’utilisateurs dans la plupart des grandes villes et des confĂ©rences sur la plupart des continents, et une salle pleine de gens qui ont dĂ©jĂ  rĂ©solu le problĂšme que vous allez rencontrer vaut largement l’aprĂšs-midi qu’on y passe.

Ce que vous savez maintenant

Il y a deux ou trois heures, vous avez ouvert une base de code et vu des $this->, des :: et un modĂšle d’exĂ©cution que vous ne reconnaissiez pas. Vous savez maintenant comment PHP s’exĂ©cute, comment il type, comment il organise le code en paquets, et oĂč il va vous surprendre, et l’ancienne rĂ©putation du langage a retrouvĂ© sa place, dans le chapitre consacrĂ© au passĂ©. Cette base de code est devenue lisible, et vous pouvez retourner la lire.