Comment gérer l'opérateur "ou" en php

Résolu
lynayanami Messages postés 34 Date d'inscription   Statut Membre Dernière intervention   -  
elgazar Messages postés 5841 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,

Je n'ai pas trouvé de solution simple pour gérer le "ou" en php. En fait je voudrais définir dans mon blog que par exemple les catégories 10, 15 et 11 ont une couleur de fond rouge. J'ai essayé "||" mais cela affecte la couleur à d'autres catégories.

Comment faire sans les distinguer ligne par ligne ?


<?php if(is_category('4') ):
$bg=vert;
elseif (is_category('10')||('15')||('11') ):
$bg=rouge;
else :
$bg=orange;
endif; ?>

A voir également:

3 réponses

Utilisateur anonyme
 
Bonjour

Le "ou" en PHP se comporte comme dans les autres langages, du moins ceux que je connais.
C'est une opération entre variable booléennes, c'est à dire vraies ou fausses.
Quand tu écris
is_category('10')||('15')||('11')
, tu fais un "ou" entre 3 choses :
is_category('10')
,
('15')
et
('11')
.
Je ne sais pas ce que vaut la première, je suppose qu'elle vaut 'vrai' si une certaine catégorie vaut '10' et 'faux' sinon.
Mais '15' et '10' sont toujours vrais en php, car ils ne valent pas 0. Et un 'ou' avec quelque chose de toujours vrai est toujours vrai.
Je suppose que ce que tu voulais écrire, c'était
is_category('10')||is_category('15')||is_category('11')
1
elgazar Messages postés 5841 Date d'inscription   Statut Membre Dernière intervention   1 326
 
on peut écrire tout simplement
is_category (array (10, 15, 11))

comme expliqué dans la page du codex wordpress
codex.wordpress.org/fr:Marqueurs_conditionnels
1
lynayanami Messages postés 34 Date d'inscription   Statut Membre Dernière intervention   1
 
Oui c'est bien ça, j'essaie peu à peu d'avoir la logique php :) Merci !
0
Utilisateur anonyme
 
De rien :)
Mais ça n'est pas une logique propre au php.
0