Utiliser parenthèse dans un langage de programmation ou d'un langage de script signifie généralement qu'il est une fonction.
Cependant $_COOKIE
en php n'est pas une fonction, c'est un Array. Pour accéder aux données dans les tableaux, vous utilisez des accolades carrées ('[' et ']') qui symbolisent l'index pour obtenir les données. Donc, en faisant $_COOKIE['test']
vous dites essentiellement: "Donnez-moi les données de l'indice" test
Maintenant, dans votre cas, vous avez deux possibilités: (1) soit vous voulez voir si c'est faux-- en regardant à l'intérieur du biscuit ou (2) voir si elle est même pas là.
Pour cela, vous utilisez la fonction isset qui vérifie essentiellement si la variable est définie ou non.
Exemple
if (isset($_COOKIE['test']))
Et si vous voulez vérifier si la valeur est fausse et il est défini, vous pouvez effectuer les opérations suivantes:
if (isset($_COOKIE['test']) && $_COOKIE['test'] == "false")
Une chose que vous pouvez garder à l'esprit est que si le premier test échoue, il ne sera pas pris la peine de vérifier la déclaration suivante si elle est et (&&
).
Et pour expliquer pourquoi vous obtenez réellement l'erreur "Fonction doit être une chaîne", regardez this page. Il s'agit de la création basique de fonctions en PHP, ce qu'il faut retenir c'est qu'une fonction en PHP ne peut contenir que certains types de caractères, où $
n'en fait pas partie. Depuis PHP $
représente une variable.
Une fonction peut ressembler à ceci: _myFunction _myFunction123 myFunction
et dans de nombreux autres modèles, mais le mélange avec des caractères tels que $ et% ne fonctionnera pas.
@anonymous Pourquoi le DV ? –
En raison du fonctionnement du système de vote. Les gens remettent en question les réponses qu'ils trouvent plus pertinentes et plus utiles à la question. Et les gens votent contre les réponses qu'ils trouvent moins intéressantes. J'imagine que c'est pourquoi vous avez été abattu. –
@Filip Ekberg C'est éclairant ... ça va être génial si ces âmes anonymes ont laissé un commentaire quant à pourquoi .... mais je suppose que ce n'est pas vraiment une pratique répandue :) –