Fabrication industrielle
Internet des objets industriel | Matériaux industriels | Entretien et réparation d'équipement | Programmation industrielle |
home  MfgRobots >> Fabrication industrielle >  >> Manufacturing Technology >> Technologie industrielle

Version PHP 7 :fonctionnalités clés et ce que vous devez savoir

Si vous êtes un développeur, vous savez probablement que la version bêta complète du nouveau PHP 7 est disponible. La version 7.0.0 contient de nombreuses fonctionnalités intéressantes. Cependant, nous vous recommandons de ne pas l'utiliser dans un environnement de production. , jusqu'à ce que vous obteniez la version stable, attendue pour novembre 2015.

Vous êtes libre de tester et de jouer avec la dernière version bêta, et de signaler les bugs si vous en découvrez pendant les tests. Nous répertorions toutes les modifications/mises à niveau que vous verrez dans PHP 7.0.0.

16. Ceci est PHP 7 (pas 6)

La version stable actuelle est PHP 5.6. Ainsi, de nombreux développeurs attendent la version 6.0. Ce qu’ils ne savent pas, c’est que PHP 6 existait déjà dans le passé en tant que processus expérimental, mais n’a jamais atteint la phase de production. L'équipe de développement principale a décidé de transmettre le nom PHP 6 pour la prochaine version majeure.

15. Prise en charge de Windows 64 bits

La version actuelle de PHP ne prend pas en charge les entiers 64 bits ou les fichiers volumineux. Les choses vont changer à l'avenir, car PHP 7 introduit un support 64 bits cohérent, ce qui signifie que les entiers natifs 64 bits et les fichiers volumineux seront pris en charge.

14. Suppression des fonctions et extensions obsolètes

L'un des principaux objectifs de PHP 7 était de libérer de la mémoire pour permettre des améliorations. Il est donc devenu nécessaire d'éliminer les anciennes API de serveur, extensions et fonctionnalités obsolètes non prises en charge.
Tous les éléments supprimés n’ont pas été utilisés depuis longtemps. Cependant, si vous disposez d'une ancienne application exécutée sur des versions plus anciennes, la mise à niveau vers PHP 7 peut potentiellement casser le code.

Lire : 30 outils de suivi des bogues pour les développeurs

13. Déclarations d'utilisation collective

Cette RFC est créée pour améliorer l'implémentation actuelle des espaces de noms PHP en introduisant le concept de groupe de déclaration. Cette fonctionnalité est utile pour les codeurs qui importent généralement de nombreuses classes à partir du même espace de noms. La nouvelle syntaxe élimine la verbosité, rend votre code plus clair et vous fait gagner beaucoup de temps de frappe.

12. Cours anonymes

Le concept de classes anonymes est déjà utilisé dans d'autres langages de programmation orientés objet comme Java et C#. Ce ne sont rien d’autre qu’une classe sans nom qui peut accélérer le codage ainsi que le temps d’exécution. Vous devez les utiliser lorsqu'une classe n'est utilisée qu'une seule fois lors de l'exécution et lorsqu'une classe n'a pas besoin d'être documentée.

11. Syntaxe des variables uniformes

La syntaxe de variable uniforme résout de nombreuses incohérences dans la façon dont les expressions sont évaluées. Par exemple, la possibilité d'appeler la fermeture attribuée aux propriétés à l'aide de ($object->closureProperties)() , ainsi que de pouvoir enchaîner des appels statiques.

Dans l'ancienne version de PHP, $obj->$properties['name']  accéderait à la propriété dont le nom est dans la clé de nom du tableau de propriétés. Désormais, il accéderait à la clé de nom de la propriété dont le nom réside dans $properties.

10. Syntaxe d'échappement Unicode Codepoint

Le nouveau caractère d'échappement (\u) nous permet de spécifier sans ambiguïté les points de code des caractères Unicode (en hexadécimal) à l'intérieur des chaînes. Par exemple, si vous ne parvenez pas à saisir un emoji, vous pouvez utiliser sa séquence d'échappement à la place.

9. Classe parent partagée dans la gestion des exceptions

Pour les codeurs PHP, gérer les erreurs fatales et captables n’a jamais été une tâche facile. Grâce aux nouvelles exceptions du moteur, vous pouvez remplacer ces types d'erreurs par des exceptions.
Pour permettre aux codeurs de détecter à la fois les exceptions traditionnelles et les exceptions du moteur, PHP 7 introduit une nouvelle classe parent partagée sous le nom \BaseException. .

8. Lier la fermeture sur appel

Fermeture ::bind()  et Closure->bindTo()   vous permet de modifier la liaison de $this  et la portée appelante, séparément ou ensemble, créant une fermeture en double.   En PHP 7, il existe un moyen simple de le faire au moment de l'appel, en liant les deux $this  et appeler scope au même objet avec l'ajout de  Fermeture->call().  La méthode prend l'objet comme premier argument, suivi de tout argument à passer dans la fermeture.

7. Opérateur de fusion nul

L’opérateur de fusion est désigné par « ? ». Il renvoie le résultat de son premier opérande s'il existe et n'est pas NULL, sinon il renverra le deuxième opérande. Cela signifie qu'il est totalement sûr d'utiliser coalesce car il ne générera pas de E_NOTICE même si la valeur n'existe pas.

6. Opérateur de comparaison combinée

L'opérateur de comparaison combiné (également appelé opérateur de vaisseau spatial) est similaire à version_compare() . ou strcmp() dans le comportement, mais il peut être utilisé dans toutes les valeurs PHP génériques. Il existe déjà dans les langages de programmation Ruby et Perl.
L'opérateur renvoie -1 si l'opérande de gauche est supérieur, 0 si les deux sont égaux et 1 si l'opérande de gauche est supérieur.

5. Expression de retour du générateur et délégation du générateur

L'expression de retour du générateur vous permet de renvoyer une valeur une fois l'exécution d'un générateur réussie. En PHP 7, vous pouvez appeler $generator->getReturn()  pour récupérer la valeur de retour. Si le générateur n'a pas encore renvoyé ou lancé une exception non interceptée, $generator->getReturn()  lancera une exception. Dans le cas où le générateur est terminé mais qu'il n'y a pas eu de retour, NULL est renvoyé.

La fonctionnalité de délégation du générateur vous permet de renvoyer une autre structure itérable qui peut elle-même être parcourue, qu'il s'agisse d'un itérateur, d'un tableau ou d'un autre générateur. L'itération de la sous-structure est effectuée par la boucle originale la plus externe, plutôt que par une boucle récursive.

4. Déclarations de type de retour

De nombreux programmeurs aimeraient déclarer le type de retour d’une fonction. Cela permet d'éviter que des valeurs de retour et des sous-types involontaires ne brisent le type de retour attendu du super-type, en particulier dans les interfaces. De plus, PHP 7 est livré avec 4 nouvelles décélérations de type pour le type scalaire – string, int, float et bool. Ces nouveaux types permettent aux codeurs de spécifier qu'ils attendent le retour d'un entier, d'un flottant, d'une chaîne et d'un booléen.
Dans l'image ci-dessus, la fonction foo est censée retourner sous forme de tableau. Découvrez quelques exemples complexes.

3. Arbre de syntaxe abstraite

Le changement le plus important et le plus invisible est l'ajout d'un arbre de syntaxe abstraite – une représentation intermédiaire du code lors de la compilation. Il remplace la pratique existante consistant à émettre des opcodes directement depuis l'analyseur. Cela nous permet de supprimer un certain nombre de hacks et rend la mise en œuvre plus compréhensible et maintenable. En outre, vous pouvez implémenter une syntaxe qui n'était pas réalisable avec le processus de compilation en une seule passe.

2. Le tout nouveau moteur Zend

Le premier moteur Zend introduit en 1999 en PHP 4. Il s'agit d'un moteur de script open source (écrit en C) qui interprète PHP.  La version actuelle de PHP utilise Zend Engine II, qui assure la gestion de la mémoire et des ressources et ajoute un modèle objet extensible et une amélioration significative des performances au langage.
Le nouveau Zend Engine III, initialement nommé phpng, est en développement pour PHP 7.

1. Performances + économie de mémoire

La principale raison de passer à PHP 7 est ses performances. C'est une bonne nouvelle, en particulier pour les petits hébergeurs, car ils pourront héberger plus de clients sur le même matériel. Les performances de la 7ème version sont comparables à celles de Facebook HHVM, qui dispose d'un compilateur JIT (juste à temps) qui permet la compilation au moment de l'exécution plutôt qu'avant l'exécution. Il existe également une économie de mémoire substantielle, grâce à l'optimisation des structures de données internes.

Recommandé : 30 bibliothèques PHP étonnantes pour les programmeurs et les développeurs

Comme vous pouvez le voir dans le graphique publié par Zend, la requête WordPress sur PHP 5.6 s'exécute sous 100 M d'instructions CPU, tandis que PHP 7 n'en exécute que 25 M pour effectuer le même travail. De plus, les tests montrent que vous pouvez exécuter 3 fois des transactions Magento sur le même matériel, et Drupal 8 fonctionne 72 % plus rapidement avec PHP 7.


Technologie industrielle

  1. Quatre façons dont la blockchain change la chaîne d'approvisionnement alimentaire
  2. Utilisation du fil de tungstène dans les applications de dispositifs médicaux
  3. Comment la résilience organisationnelle profite aux chaînes d'approvisionnement
  4. Portables sur le lieu de travail :une aubaine pour la sécurité ou une intrusion dans la confidentialité ?
  5. Surveillance des outils :prévoir les pannes d'outils et réduire les coûts
  6. Est-ce que ça vaut le coup? Les avantages du moulage de précision
  7. 6 erreurs courantes à éviter dans le développement de nouveaux produits
  8. Les principaux avantages — et défis — de la fabrication agile
  9. 5 questions à poser lors de la sélection des matériaux pour les produits modernes