Services webmasters
Partenaires
Jeux concours gratuits
 
Ce que les références ne sont pas
<<<
Passage par référence Retourner des références
>>>

4.10 Les références
4 Référence
 Manuel PHP

Qu'est ce qu'une référence?
Que font les références ?
Ce que les références ne sont pas
->Passage par référence
Retourner des références
Détruire une référence
Repérer une référence

4.10.4 Passage par référence

Vous pouvez passer des variables par référence, de manière à ce que la fonction modifie ses arguments. La syntaxe est la suivante :

<?php
  
function foo(&$var) {
    
$var++;
  }
  
$a=5;
  
foo ($a);
// $a vaut 6 maintenant
?>
Notez qu'il n'y a pas de signe de référence dans l'appel de la fonction, uniquement sur sa définition. La définition de la fonction est suffisante pour passer correctement des arguments par référence.

Les objets suivants peuvent être passés par référence :

  • Une variable, i.e. foo($a)
  • Un nouvel objet, i.e. foo(new foobar())
  • Une référence, retournée par une fonction :
    
    <?php
      
    function &bar() {
       
    $a = 5;
       return
    $a;
      }
      
    foo(bar());
    ?>
    Voir aussi des détails dans retourner des références .

Toutes les autres expressions ne doivent pas être passées par référence, car le résultat sera indéfini. Par exemple, les passages par référence suivants sont invalides :

<?php
  
function bar() // Notez l'absence de &
  
{
        
$a = 5;
        return
$a;
  }
  
foo(bar);
  
foo($a = 5) // Expression, pas une variable
  
foo(5) // Constante, pas une variable
?>
Ces fonctionnalités sont valables à partir de PHP 4.0.4.

<< Passage par référence >>
Ce que les références ne sont pas Les références Retourner des références
Services webmasters
Les manuels
 
CoursPHP.com - Reproduction interdite -