Différences entre PHP 5 et PHP 7
Si vous ne suivez pas l’actualité de PHP ou si vous étés débutant en programmation PHP, sachez qu’avant PHP 7, PHP 5.6 était la version stable. Il est assez surprenant pour beaucoup, que la société évitait de publier PHP 6 car PHP 6 était destiné aux tests, mais il n’avait jamais vraiment de version stable. Comme PHP 6 existait en tant que projet expérimental, la société ne voulait pas confondre la communauté avec sa publication et a directement sauté vers PHP 7. Évidemment, avec la publication de PHP 7, les gens ont commencé à comparer avec sa version précédente.
Différence clé entre PHP 5 et PHP 7
Performance
Les performances de PHP 7 et PHP 5 constituent une différence majeure. En supposant que vous ayez écrit un code PHP en PHP 5, si vous exécutez le même code dans les deux versions, les performances de PHP 7 seront nettement supérieures à celles de PHP 5. PHP est alimenté par le moteur Zend même depuis la publication de PHP 4. PHP 5 utilise Zend II mais PHP 7 utilise un tout nouveau modèle de moteur appelé PHP-NG ou Next Generation. Ce nouveau moteur PHP-NG améliore les performances deux fois avec une utilisation optimisée de la mémoire. En fait, le nouveau moteur nécessite moins de serveurs pour desservir le même nombre d’utilisateurs qu’auparavant.
Le type de retour
Tandis que beaucoup de développeurs voudraient pouvoir déclarer le type de retour pour une fonction ou une méthode. Par défaut, PHP7 autorisera les développeurs à déclarer quel type de retour est censé renvoyer une valeur. Voire l’exemple ci-dessous:
public function check(int $id) : bool { return isset($this->var[$id]) ? true : false; }
Opérateur de comparaison Spaceship <=>
PHP7 introduira un nouvel opérateur appelé opérateur de Spaceship (<=>), ou autrement appelé opérateur de comparaison combiné. Il peut être utilisé principalement pour le tri et la comparaison combinée. Cela fonctionne comme strcmp() ou version_compare().
Exemple Avant PHP7:
function check_order($a, $b) { return ($x < $y) ? -1 : (($x > $y) ? 1 : 0); }
Exemple Après PHP7:
function check_order($a, $b) { return $x <=> $y; }
Classe anonyme
L’un des nouveautés majeures de PHP 7 qui n’est pas présent dans PHP 5 est la classe anonyme. Même si PHP avait une approche orientée objet de PHP 5, il lui manquait cette fonctionnalité très répandue dans les autres langages orientée objet populaires tels que Java et C#. Une classe anonyme est utilisée pour accélérer le temps d’exécution. Cela convient lorsque vous n’avez pas besoin d’exécuter une classe plus d’une fois et que vous n’avez pas besoin de la documenter dans le projet.
Conclusion
PHP 7 est l’avenir de PHP et toutes les applications devront passer à PHP 7 tôt ou tard.