J'ai un tableau à l'extérieur :
$myArr = array();
Je veux que ma fonction accède au tableau à l'extérieur de celui-ci afin qu'elle puisse y ajouter des valeurs
function someFuntion(){ $myVal = //some processing here to determine value of $myVal $myArr[] = $myVal; }
Comment donner aux variables la portée correcte pour les fonctions ?
Vous pouvez utiliser des fonctions anonymes :
Ou vous pouvez utiliser la fonction flèche :
Par défaut, lorsque vous êtes dans une fonction, vous n'avez pas accès aux variables externes.
Si vous souhaitez qu'une fonction puisse accéder à une variable externe, vous devez la déclarer comme variable globale à l'intérieur de la fonction :
Pour plus d'informations, voir Portée variable .
Mais veuillez noter que utiliser des variables globales n'est pas une bonne pratique : de cette façon, votre fonction n'est plus indépendante.
Une meilleure idée est que votre fonction renvoie le résultat :
Et appelez la fonction comme ceci :
Vos fonctions peuvent également accepter des arguments et même gérer les arguments passés par référence :
Ensuite, appelez la fonction comme ceci :
Avec ceci :
Pour plus d'informations, vous devriez lire la section fonctions, notamment les sous-sections suivantes :