2010-01-01 5 views
5

Ces deux éléments assureront que $ var est une valeur booléenne, mais cette dernière semble plus claire. Le double point d'exclamation (!!) est plus court que le type mais moins clair et plus susceptible de causer de la confusion. Sans parler de dur pour lancer une recherche pour obtenir des réponses. Le double point d'exclamation est quelque chose dont je n'ai entendu parler qu'en JavaScript, qui n'a pas de typage booléen. Est-il normal de le voir aussi utilisé en PHP?

Répondre

3

Aucun de ceux-ci n'est commun en PHP car ils sont inutiles.

Si vous pouvez faire !!, vous pouvez aussi bien l'utiliser où une expression booléenne est nécessaire (while, if, &&, etc.).

+0

Est-ce que je fais fausse erreur, ou est-ce que 'echo' ne donne aucun résultat en php? – loveNoHate

4

Ceci est valable en JavaScript, mais pas techniquement un « cast », il obtient le même effet:

var booleanValue = Boolean(otherValueType); 

Cela équivaut à:

var booleanValue = !!otherValueType; 

je trouve qu'il est bon de faire ceci lors du traitement des paramètres entrants, pour préciser que l'on voulait que la valeur soit un booléen. Lors de la vérification de la «véracité», il n'est pas nécessaire de transcrire en PHP ou en JavaScript. Rappelez-vous juste qu'une chaîne vide est équivalente à false en PHP et true en JavaScript. Donc, pour répondre à votre question, que ce soit bien dans l'une ou l'autre langue, c'est simplement un choix de style personnel.