38 votes

Récupérer des variables de l'extérieur, à l'intérieur d'une fonction en PHP

J'essaie de comprendre comment je peux utiliser une variable qui a été définie en dehors d'une fonction, à l'intérieur d'une fonction. Existe-t-il un moyen de le faire ? J'ai essayé de définir la variable comme "globale", mais cela ne semble pas fonctionner comme prévu.

Un exemple simple de mon code

$var = '1';

function() {
    $var + 1;
    return $var;
}

Je veux que cela renvoie la valeur 2.

2voto

Nathan Anderson Points 4366

Voir http://php.net/manual/en/language.variables.scope.php pour la documentation. Je pense que dans votre cas précis, vous n'obteniez pas les résultats escomptés parce que vous n'attribuiez pas la $var + 1 l'opération à quoi que ce soit. Les calculs sont effectués, puis jetés, essentiellement. Voir ci-dessous pour un exemple fonctionnel :

$var = '1';

function addOne() {
   global $var;
   $var = $var + 1;
   return $var;
}

0voto

Tim Points 35

Selon : https://riptutorial.com/php/example/2496/global-variable-best-practices il est préférable de mettre

$var = '1';

function($var) {
$var + 1;
return $var;
}

Corrigez-moi si je me trompe.

-1voto

<?php
$var = '1';
function x ($var) {
return $var + 1;
}
echo x($var); //2
?>

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X