Maison > développement back-end > tutoriel php > Comment corriger l'erreur « Le passage par référence au moment de l'appel a été supprimé » dans PHP 5.4 ?

Comment corriger l'erreur « Le passage par référence au moment de l'appel a été supprimé » dans PHP 5.4 ?

Barbara Streisand
Libérer: 2024-11-27 03:48:09
original
688 Les gens l'ont consulté

How to Fix the

PHP 5.4 Call-time Pass-by-Reference : une solution simple démystifiée

L'erreur PHP "Erreur fatale : Call-time pass -by-reference has been delete" se produit lorsque des variables sont passées comme références à des fonctions, une pratique désormais obsolète dans PHP 5.4. Cette erreur peut être répandue dans le code existant qui utilise largement les références. Bien que réécrire l'intégralité de la base de code puisse sembler intimidant, il existe une solution simple pour résoudre ce problème.

Contrairement à la croyance populaire, le signe de référence doit être inclus dans la définition de la fonction, et non dans l'appel de la fonction. Dans PHP 5.4, l'utilisation de "&" dans les appels de fonction est obsolète et déclenche des messages d'avertissement. Pour résoudre ce problème, spécifiez la référence dans la définition de la fonction.

Guide de documentation PHP

La documentation PHP indique : "Il n'y a pas de signe de référence sur un appel de fonction - seulement sur les définitions de fonctions." Cela signifie que la définition de la fonction établit seule un comportement de passage par référence pour l'argument.

Utilisation correcte :

Au lieu d'utiliser la syntaxe obsolète :

myFunc(&$arg); 
Copier après la connexion

Utilisez la syntaxe suivante :

myFunc($arg);
Copier après la connexion

Dans la fonction définition :

function myFunc(&$arg) { } 
Copier après la connexion

En adhérant à ces directives, vous pouvez facilement corriger le problème de passage par référence de l'heure d'appel et éliminer les erreurs associées dans votre code.

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!

source:php.cn
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal