time_read12mn de lecture

PHP 7 : Nouveautés et performances

01 juillet 2016

PHP 7 : Nouveautés et performances

Pour faire de votre projet web un succès, nous vous donnons accès aux meilleurs outils. Nous voulons que nos clients aient la meilleure expérience d’hébergement web possible, c’est pourquoi nous vous proposons la dernière version de PHP pour votre site web !

La version 7 de PHP est sortie 11 ans après PHP 5, pourquoi avoir mis si longtemps à sortir cette nouvelle version?

Le 3 Décembre 2015, un version majeure de PHP 7 est sortie. Alors que certains peuvent se demander ce qui a mis si longtemps pour sortir cette nouvelle version, d’autres peuvent être surpris par la transition de la version PHP 5 à PHP 7.

PHP 6, la version qui ne verra jamais le jour

La version PHP 6 devait régler tous les problèmes de compatibilité de langues et adapter facilement les applications web et sites dans des contextes linguistiques différents. Cette initiative a malheureusement échoué et a entraîné une de nombreuses complications. Par conséquent, les développeurs PHP  ont pris la décision de sauter PHP 6 et de développer directement PHP 7. Pour en savoir plus sur les aspects Unicode de PHP 6 rendez-vous directement sur la page PHP Wikipédia.

Voyons maintenant les nouveautés PHP 7 que nous avons attendu si longtemps…

Performances PHP 7 : 2 fois plus rapide

Sans doute est l’une des principales améliorations. PHP 7 est basé sur le projet PHP Next-Gen ou PHPNG pour faire court. Au tout début PHP utilisait Zend Engine , PHP 7 est maintenant propulsé par Zend Engine 3. Les performances sont impressionnantes : La plupart des applications en cours d’exécution sur PHP 5.6 s’exécutent au moins deux fois plus rapidement sur PHP 7 avec en plus une faible consommation de mémoire !

Zend, société éditrice du langage PHP 7 a réalisé une infographie (en anglais) pour mettre en avant les performances de PHP 7. Voici ci-dessous un exemple de performance calculé en nombre de requêtes par seconde pour le logiciel WordPress :

performance-php7

Accédez à l’infographie complète :

php7

PH7 : Les principales améliorations

Typage fort

Souvent critiqué par les puristes pour son côté très permissif, PHP 7 se rapproche de plus en plus des langages plus sérieux disposant d’un typage fort.

Pour déclarer une fonction, il était déjà possible de spécifier le type de certains paramètres (array, Interface ou Class), vous pouvez désormais le spécifier pour les types primitifs : int, float, string, bool.

Vous pouvez également définir le type de retour d’une fonction :

function longueur_chaine(string $arg): int
{
    return strlen($arg); 
}

Un nouvel opérateur de comparaison

Cet opérateur nommé Tie Fighter s’écrit de cette façon : <=>.

Il retournera -1, 0 ou 1 en fonction de si la valeur comparée à gauche est inférieure, égale ou supérieure à la valeur de droite :

echo 2 <=> 1; // Affichera 1
echo 1 <=> 1; // Affichera  0
echo 1 <=> 2; // Affichera  -1

Certains algorithmes nécessitent un grand nombre de comparaisons entre différentes valeurs, cela permettra donc de faciliter la lecture et l’écriture de ceux-ci.

Test sur l’existence d’une variable

Dans le même esprit de clarté de lecture du code, PHP 7 apporte une amélioration sur les tests d’existence d’une variable.

Dans certains cas extrêmes l’existence d’une variable se teste de cette manière :

if (isset($_POST['ma_variable'])) {
 $ma_variable = $_POST['ma_variable'];
 } elseif (isset($_GET['ma_variable'])) {
 $ma_variable = $_GET['ma_variable'];
 } elseif ($_SESSION['ma_variable']) {
 $ma_variable = $_SESSION['ma_variable'];
 } else {
 $ma_variable = 'default';
 }

Désormais avec le nouvel Null coalescing (??), le code ci-dessus sera traduit de cette façon :

$ma_variable = $_POST['ma_variable'] ?? $_GET['ma_variable'] ?? $_SESSION['ma_variable'] ?? 'default';

La fin des fonctions mysql_query

Annoncée comme étant deprecated depuis quelques versions, l’extension mysql à été définitivement supprimée de la version PHP 7. Désormais pour interroger une base de données MySQL, vous devrez impérativement passer par l’extension PDO ou MySQLi. D’un point de vue de la sécurité c’est une grande avancée, toutefois pour les anciennes applications utilisant encore les fonction mysql le travail de migration s’annonce conséquent.

Mettre à jour son site avec la version PHP 7

Si votre site avec un logiciel de création de site comme WordPress, Joomla ou Drupal…. Les dernières mises à jour de ces CMS incluent les spécificités de PHP 7,  vous n’avez donc aucun souci à vous faire en terme de compatibilité de votre site avec la nouvelle version de PHP.

Dans le cas où vous disposeriez d’une solution sur-mesure, nous vous conseillons de suivre le guide de migration proposé sur le site officiel de PHP : Guide de migration PHP 7.

Activer PHP 7 sur votre formule d’hébergement web LWS

Vous pouvez activer PHP 7 facilement sur votre hébergement web mutualisé LWS  depuis votre espace client.

  • Rendez-vous dans la rubrique Configuration PHP de l’administration de votre formule d’hébergement web :

configuration-php

  • Dans la partie Version PHP, sélectionnez la version PHP 7.0, puis cliquez sur le bouton Valider pour finaliser l’opération :configuration-php7-lws
  • Un délai d’une heure peut-être nécessaire pour que le changement de version de PHP soit pris en compte.

Donc n’attendez plus pour booster les performances de votre site !

 

 

Avatar de l'auteur

Auteur de l'article

Fabrice S.

Développeur web full stack et consultant SEO. Je suis Fabrice, expert en développement web Full Stack, consultant SEO et noms de domaine chez LWS 🌐. J'adore partager mes astuces et mon expérience pour vous aider à briller sur le web ! Suivez-moi pour des conseils pratiques et fun 😊.

Il y a 2866 jours

note article

5/5 (254 votes)

Commentaires (0)
Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée.

White Book for other Category

Hébergement Web LWS - 3 mois offerts

Hébergement Web Starter LWS GRATUIT pendant 3 mois ! 🚀

Cette offre exclusive comprend tout ce dont vous avez besoin pour créer votre site web GRATUITEMENT : Hébergement 250Go SSD, 5 sites webs hébergeables, WordPress et autres CMS en 1 clic, support réactif 7J/7, serveurs en France...