PHP: Que font les références ? - Manual in English
PHP: Que font les références ? - Manual in Deutsch
PHP: Que font les références ? - Manual in Polish

Vous êtes à PHP: Que font les références ? - Manual Area


recherches récentes:
incluez les fonctions , fonctions variables , fonctions de poteau...




Si vous êtes nouveau au PHP ou devez juste régénérer vos qualifications, c'est l'endroit à commencer. Cette série de cours d'instruction te donnera la connaissance de base que vous devrez créer un simple Site Web de PHP.

Le PHP est un langage de programmation r3fléchissant à l'origine conçu pour produire les pages Web dynamiques. [1] Le PHP est employé principalement dans le serveur-côté scripting, mais peut être employé d'une ligne de commande interface ou dans des applications graphiques autonomes. Des interfaces utilisateurs textuelles peuvent également être créées utilisant des ncurses.

Que font les références ?


Que font les références ?

Les références vous permettent de faire pointer deux variables sur le même contenu. Par exemple, lorsque vous faites :

Exemple #1 Les références

<?php
$a 
=& $b;
?>
cela signifie que $a et $b pointent sur le même contenu.

Note: $a et $b sont complètement égales ici : ce n'est pas $a qui pointe sur $b, ou vice versa. C'est bien $a et $b qui pointent sur le même contenu.

Note: Si un tableau par référence est copié, ses valeurs ne sont pas déréférencées. Cela est valide également pour les tableaux passés par valeur aux fonctions.

Note: Si vous assigner, passer ou retourner une variable indéfinie par référence, elle sera créée.

Exemple #2 Utilisation des références avec des variables indéfinies

<?php
function foo(&$var) { }

foo($a); // $a est "créée" et assignée à NULL

$b = array();
foo($b['b']);
var_dump(array_key_exists('b'$b)); // bool(true)

$c = new StdClass;
foo($c->d);
var_dump(property_exists($c'd')); // bool(true)
?>

La même syntaxe peut être utilisée avec les fonctions qui retournent des références, et avec l'opérateur new (PHP 4.0.4 et plus récent):

Exemple #3 Les références et new()

<?php
$bar 
=& new fooclass();
$foo =& find_var($bar);
?>
Depuis PHP 5, new retourne une référence automatiquement, donc, l'utilisation de =& dans ce contexte est obsolète et produit un message de degré E_STRICT.

Note: À moins d'utiliser la syntaxe ci-dessus, le résultat de $bar = new fooclass() ne sera pas la même variable que $this dans le constructeur, ce qui signifie que si vous avez utilisé la référence $this dans le constructeur, vous devez assigner la référence, ou bien obtenir deux objets différents.
Même si vous pouvez utiliser l'opérateur @ pour supprimer les messages d'erreurs du constructeur avec la syntaxe @new, cela ne fonctionnera pas avec la syntaxe &new. C'est une limitation du moteur Zend, et cela conduit à une erreur d'analyse.

Avertissement

Si vous assignez une référence à une variable définie en tant que global dans une fonction, la référence sera visible uniquement à l'intérieure de la fonction. Vous pouvez éviter cela en utilisant le tableau $GLOBALS.

Exemple #4 Référencer une variable globale à l'intérieure d'une fonction

<?php
$var1 
"Variable Exemple";
$var2 "";

function 
global_references($use_globals)
{
    global 
$var1$var2;
    if (!
$use_globals) {
        
$var2 =& $var1// visible uniquement dans la fonction
    
} else {
        
$GLOBALS["var2"] =& $var1// visible également dans un contexte global
    
}
}

global_references(false);
echo 
"var2 est défini à '$var2'\n"// var2 est défini à ''
global_references(true);
echo 
"var2 est défini à '$var2'\n"// var2 est défini à 'Variable Exemple'
?>
Voyez global $var; comme un raccourci pour $var =& $GLOBALS['var'];. De ce fait assignant d'autres références à $var changeant uniquement la référence locale de la variable.

Note: Si vous assignez des valeurs par références dans une structure foreach, les références seront également modifiées.

Exemple #5 Références et structure foreach

<?php
$ref 
0;
$row =& $ref;
foreach (array(
123) as $row) {
    
// faites quelque chose
}
echo 
$ref// 3 - le dernier élément du tableau itéré
?>

Le deuxième intérêt des références est de pouvoir passer des variables par référence. On réalise ceci en faisant pointer des variables locales vers le contenu des variables de fonction. Exemple :

Exemple #6 Passage de paramètre par référence

<?php
function foo(&$var) {
  
$var++;
}
$a=5;
foo($a);
?>
$a vaut 6. Cela provient du fait que dans la fonction foo, la variable $var pointe sur le même contenu que $a. Voir aussi les explications détaillées dans passage par référence.

Le troisième intérêt des références est de retourner des valeurs par référence.


nadruki na płyty cd tłoczenie płyt dvd tłoczenie i kopiowanie płyt
szkolenia dla księgowych kursy księgowe księgowość
Wypowiedzenie umowy najmu
super centralny odkurzacz naprawdę warto centralny odkurzacz
banki kredyt
902 903

Des autres fonctions utiles :


regexp.reference | reference.pcre.pattern.syntax | reference.pcre.pattern.modifiers | migration51.references | language.references.whatdo | language.references.unset | language.references.spot | language.references.return | language.references.pass | language.references | language.references.arent | function.mb-preferred-mime-name | function.ldap-parse-reference | function.ldap-next-reference | function.ldap-first-reference | function.domdocument-create-entity-reference | domentityreference.construct | domdocument.createentityreference | class.domentityreference |


Le PHP est une langue scripting d'usage universel employée couramment qui approprié particulièrement au développement de Web et peut être enfoncée dans le HTML. Si vous êtes nouveau au PHP et voulez avoir une certaine idée de la façon dont cela fonctionne, essayez le cours d'instruction d'introduction. Après ce, vérifiez le manuel en ligne, et l'exemple archivez les emplacements et certaines des autres ressources disponibles dans la section de liens.