Table des matières
Syntaxe
Comment fonctionne l'appel par référence en PHP ?
Exemples d'appel par référence
Exemple n°2
Exemple #3
Conclusion
Maison développement back-end tutoriel php Appel PHP par référence

Appel PHP par référence

Aug 29, 2024 pm 12:47 PM
php

L'appel par référence consiste à transmettre la référence de la variable en tant que paramètre de fonction. Puisque PHP ne prend pas directement en charge le type de mécanisme de pointeur, il prend en charge une référence pour gérer diverses opérations. En langage PHP, la valeur réelle de cette variable de maintien sera modifiée si la valeur à l'intérieur d'une fonction est modifiée ; cela ne peut pas être réalisé dans l’appel par valeur. Le symbole esperluette (&) peut être utilisé comme préfixe lors du passage d'une variable comme référence dans l'appel être une référence. Le symbole & lui-même représente qu'une variable est utilisée comme référence. Une fonction de référence peut également être passée en paramètre à une autre fonction. Dans cette rubrique, nous allons découvrir PHP Call by Reference.

PUBLICITÉ Cours populaire dans cette catégorie DEVELOPPEUR PHP - Spécialisation | Série de 8 cours | 3 tests simulés

Commencez votre cours de développement de logiciels libres

Développement Web, langages de programmation, tests de logiciels et autres

Syntaxe

Il n'y a pas de syntaxe spéciale pour utiliser cela, mais oui, le signe & doit être utilisé lors du passage d'un paramètre à la fonction.

La déclaration de fonction pourrait être comme ci-dessous :

function callByref(&$var)
{
$var.= 'inside the Call By Reference function.';
}
Copier après la connexion

Aucune opération spéciale n'est nécessaire lors de l'appel de cette fonction ; la même chose peut être utilisée comme une fonction normale (appel par valeur).

$var = 'Yes, I am';
callByref ($var);
Copier après la connexion

Comment fonctionne l'appel par référence en PHP ?

Avant de procéder au fonctionnement de l'appel par référence, il aurait dû y avoir des exigences pour qu'il puisse être adapté à une fonction. Ensuite, dans la déclaration de cette fonction spécifiée, nous pouvons utiliser le signe de référence à une variable paramètre. Comprenons la même chose avec un exemple rapide.

function callByref(&$var)
{
$var.= 'Call By Reference function.';
}
$var = 'Try to check the reference, I am inside the ';
Copier après la connexion

Lorsque nous essayons d'imprimer le $var ici, cela affichera le message ci-dessus

echo $var;
// printing variable before calling function
Copier après la connexion

Appel de la fonction maintenant, appeler cette fonction modifiera la valeur réelle de la variable

$var selon écrit à l'intérieur de la fonction.

callByref ($var);
echo $var;
// this will be print the combined value of the string.
Copier après la connexion

Dans le langage PHP ci-dessous mentionné peut être utilisé comme appel par référence :

  • Variable – une variable normale.
  • Une fonction qui renvoie la référence – une fonction bien définie qui renvoie la référence peut également être passée en paramètre de fonction dans l'appel par référence (voir l'exemple E3).

Exemples d'appel par référence

Différents exemples sont mentionnés ci-dessous :

Exemple n°1

Un programme simple utilisant l'appel par référence pour vérifier la nature de cette fonction. En cela, nous pouvons vérifier que la valeur réelle est modifiée après avoir utilisé l'appel par référence et modifié la variable depuis l'intérieur de la fonction.

Code :

<?php
function callByref(&$var)
{
$var.= ' This will be added to the function.';
}
$var = 'Value before calling the function.';
echo $var ."<br><br>"; // printing variable before callig function
callByref ($var);
echo $var;
?>
Copier après la connexion

Sortie :

Appel PHP par référence

Exemple n°2

Un exemple de code différencie l'appel par valeur et l'appel par référence en PHP.

Code

<?php
// call by value function
echo "<br>Swap functionality by call be value:<br>";
function SwapCallByValue($a, $b){
$c=$a;
$a=$b;
$b=$c;
echo "";
echo "<br>Value of a and b after swap: ";
echo $a . " ".$b;
}
$a = 10;
$b = 20;
echo "Value of a and b before swap: ";
echo $a . " ".$b;
SwapCallByValue($a, $b);
// swap functionality by call be a reference
echo "<br><br>Swap functionality by call by reference:<br>";
function SwapCallByRefernce(&$a,&$b)
{
$c=$a;
$a=$b;
$b=$c;
}
$a = 10;
$b = 20;
echo "Value of a and b before swap: ";
echo $a . " ".$b;
SwapCallByRefernce($a, $b);
echo "<br>Value of a and b after swap: ";
echo $a . " ".$b;
?>
Copier après la connexion

Sortie :

Appel PHP par référence

Comme nous pouvons le voir dans l'exemple ci-dessus, l'appel par échange ne fonctionnera pas si nous imprimons la valeur de a et de b en dehors de cette fonction. En effet, l'appel par valeur ne modifie pas la copie réelle de la variable. Mais dans l'appel par référence, nous pouvons voir que nous imprimons la valeur de a et b immédiatement après avoir appelé cette fonction, et l'échange fonctionne correctement. C'est tout pendant que nous traiterons des fonctions d'échange avec appel par valeur et appel par référence.

Exemple #3

Code :

<?php
// this is the main function inside which the a funtion will be passed as a parameter
function mainFunction(&$val)
{
$val++;
echo $val;
}
// this function will be used as a parameter
function &FunctionAsAParam()
{
$val = 15;
return $val;
}
echo "A value of a after calling the function: ";
$result = mainFunction(FunctionAsAParam()); // calling function, function as a reference parameter
?>
Copier après la connexion

Sortie :

Appel PHP par référence

Dans l'exemple ci-dessus, nous pouvons voir qu'une fonction de référence FunctionAsAParam() est utilisée comme autre paramètre de fonction. Selon le code écrit à l'intérieur, il attribue la valeur de la variable principale. La fonction mainFunction() est la fonction principale du code ci-dessus, augmente la valeur après avoir utilisé FunctionAsAParam() comme paramètre de fonction de référence. Il existe différentes manières d'utiliser la fonction comme paramètre de référence.

Conclusion

L'appel par référence utilise le symbole & dans le paramètre au moment de la création, pas lors de l'appel de cette fonction. Dans le langage C ou C++, il est généralement utilisé lors de l'appel de cette fonction, contrairement à PHP. L'appel PHP par référence consiste à créer ou à appeler une fonction qui modifie la copie réelle de la variable. Par conséquent, aucun signe de référence n'est requis au moment de l'appel à volonté donne l'erreur en PHP.

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!

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

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Guide d'installation et de mise à niveau de PHP 8.4 pour Ubuntu et Debian Guide d'installation et de mise à niveau de PHP 8.4 pour Ubuntu et Debian Dec 24, 2024 pm 04:42 PM

PHP 8.4 apporte plusieurs nouvelles fonctionnalités, améliorations de sécurité et de performances avec une bonne quantité de dépréciations et de suppressions de fonctionnalités. Ce guide explique comment installer PHP 8.4 ou mettre à niveau vers PHP 8.4 sur Ubuntu, Debian ou leurs dérivés. Bien qu'il soit possible de compiler PHP à partir des sources, son installation à partir d'un référentiel APT comme expliqué ci-dessous est souvent plus rapide et plus sécurisée car ces référentiels fourniront les dernières corrections de bogues et mises à jour de sécurité à l'avenir.

7 fonctions PHP que je regrette de ne pas connaître auparavant 7 fonctions PHP que je regrette de ne pas connaître auparavant Nov 13, 2024 am 09:42 AM

Si vous êtes un développeur PHP expérimenté, vous aurez peut-être le sentiment d'y être déjà allé et de l'avoir déjà fait. Vous avez développé un nombre important d'applications, débogué des millions de lignes de code et peaufiné de nombreux scripts pour réaliser des opérations.

Comment configurer Visual Studio Code (VS Code) pour le développement PHP Comment configurer Visual Studio Code (VS Code) pour le développement PHP Dec 20, 2024 am 11:31 AM

Visual Studio Code, également connu sous le nom de VS Code, est un éditeur de code source gratuit – ou environnement de développement intégré (IDE) – disponible pour tous les principaux systèmes d'exploitation. Avec une large collection d'extensions pour de nombreux langages de programmation, VS Code peut être c

Expliquez les jetons Web JSON (JWT) et leur cas d'utilisation dans les API PHP. Expliquez les jetons Web JSON (JWT) et leur cas d'utilisation dans les API PHP. Apr 05, 2025 am 12:04 AM

JWT est une norme ouverte basée sur JSON, utilisée pour transmettre en toute sécurité des informations entre les parties, principalement pour l'authentification de l'identité et l'échange d'informations. 1. JWT se compose de trois parties: en-tête, charge utile et signature. 2. Le principe de travail de JWT comprend trois étapes: la génération de JWT, la vérification de la charge utile JWT et l'analyse. 3. Lorsque vous utilisez JWT pour l'authentification en PHP, JWT peut être généré et vérifié, et les informations sur le rôle et l'autorisation des utilisateurs peuvent être incluses dans l'utilisation avancée. 4. Les erreurs courantes incluent une défaillance de vérification de signature, l'expiration des jetons et la charge utile surdimensionnée. Les compétences de débogage incluent l'utilisation des outils de débogage et de l'exploitation forestière. 5. L'optimisation des performances et les meilleures pratiques incluent l'utilisation des algorithmes de signature appropriés, la définition des périodes de validité raisonnablement,

Programme PHP pour compter les voyelles dans une chaîne Programme PHP pour compter les voyelles dans une chaîne Feb 07, 2025 pm 12:12 PM

Une chaîne est une séquence de caractères, y compris des lettres, des nombres et des symboles. Ce tutoriel apprendra à calculer le nombre de voyelles dans une chaîne donnée en PHP en utilisant différentes méthodes. Les voyelles en anglais sont a, e, i, o, u, et elles peuvent être en majuscules ou en minuscules. Qu'est-ce qu'une voyelle? Les voyelles sont des caractères alphabétiques qui représentent une prononciation spécifique. Il y a cinq voyelles en anglais, y compris les majuscules et les minuscules: a, e, i, o, u Exemple 1 Entrée: String = "TutorialSpoint" Sortie: 6 expliquer Les voyelles dans la chaîne "TutorialSpoint" sont u, o, i, a, o, i. Il y a 6 yuans au total

Comment analysez-vous et traitez-vous HTML / XML dans PHP? Comment analysez-vous et traitez-vous HTML / XML dans PHP? Feb 07, 2025 am 11:57 AM

Ce tutoriel montre comment traiter efficacement les documents XML à l'aide de PHP. XML (Language de balisage extensible) est un langage de balisage basé sur le texte polyvalent conçu à la fois pour la lisibilité humaine et l'analyse de la machine. Il est couramment utilisé pour le stockage de données et

Expliquez la liaison statique tardive en PHP (statique: :). Expliquez la liaison statique tardive en PHP (statique: :). Apr 03, 2025 am 12:04 AM

Liaison statique (statique: :) ​​implémente la liaison statique tardive (LSB) dans PHP, permettant à des classes d'appel d'être référencées dans des contextes statiques plutôt que de définir des classes. 1) Le processus d'analyse est effectué au moment de l'exécution, 2) Recherchez la classe d'appel dans la relation de succession, 3) il peut apporter des frais généraux de performance.

Quelles sont les méthodes PHP Magic (__construct, __ destruct, __ call, __get, __set, etc.) et fournir des cas d'utilisation? Quelles sont les méthodes PHP Magic (__construct, __ destruct, __ call, __get, __set, etc.) et fournir des cas d'utilisation? Apr 03, 2025 am 12:03 AM

Quelles sont les méthodes magiques de PHP? Les méthodes magiques de PHP incluent: 1. \ _ \ _ Construct, utilisé pour initialiser les objets; 2. \ _ \ _ Destruct, utilisé pour nettoyer les ressources; 3. \ _ \ _ Appel, gérer les appels de méthode inexistants; 4. \ _ \ _ GET, Implémentez l'accès à l'attribut dynamique; 5. \ _ \ _ SET, Implémentez les paramètres d'attribut dynamique. Ces méthodes sont automatiquement appelées dans certaines situations, améliorant la flexibilité et l'efficacité du code.

See all articles