Maison > développement back-end > PHP7 > le corps du texte

Différences entre PHP5 et PHP7 concernant les fonctions get

藏色散人
Libérer: 2023-02-18 08:44:01
avant
1799 Les gens l'ont consulté

La différence entre PHP5 et PHP7 dans la prise d'éléments de tableau comme noms de fonctions dynamiques

En PHP5 et PHP7, lors de l'obtention de noms de fonctions/méthodes via des variables et de l'exécution de fonctions/méthodes, le même code peut ne pas fonctionner en raison de stratégies d'interprétation différentes entre versions s'exécutent.

Exemple

$a = ['add', 'sub'];
class Test
{
  public function add()
  {
    echo 1 + 2;
  }
}
$t = new Test();
$t->$a[0]();
Copier après la connexion

L'exemple ci-dessus peut s'exécuter normalement sous PHP5.6, mais sous PHP7, il générera une erreur fatale : le nom de la fonction doit être une chaîne. En effet, lors de l'exécution de t->t−>a0 sous PHP5, $a[0] sera exécuté en premier, la valeur de l'élément sera obtenue, puis la méthode spécifique de l'objet sera exécutée.

Sous PHP7, t->t−>a sera exécuté en premier, provoquant une erreur et l'interruption de l'exécution. Si vous devez l'exécuter normalement sous PHP7, vous devez le modifier en t->{a[0]}().

Pour les différences spécifiques, veuillez vous référer à :

Différences entre PHP5 et PHP7 concernant les fonctions get

Apprentissage recommandé : "Tutoriel PHP7"

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:juejin.im
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal