Maison  >  Questions et réponses  >  le corps du texte

Correction de la condition if php & et ou dans la même portée if

J'ai essayé d'ajouter & et or dans le même if mais la condition ou ne fonctionne pas

else if ($usuario = 12 & $banca <=3 or =>7){
    echo "ok";
    }

n'est valable que lorsque $banca <=3 时有效,但在 $banca >=7 Qu'est-ce qui ne va pas?

La plage que j'essaie de vérifier est comprise entre <=3 和 >=7

P粉218775965P粉218775965370 Il y a quelques jours551

répondre à tous(1)je répondrai

  • P粉257342166

    P粉2573421662023-09-16 00:35:37

    Il y a quelques problèmes avec votre code. Une plus simple et une plus complexe : la syntaxe et la priorité des opérateurs.

    Tout d'abord, l'opérateur =是用于赋值,而不是比较。因此,$usuario = 12 的结果是 12。接下来,您有一个按位运算符 &,如果 $banca > 3,则输出 0,否则 12。最后,您获取该结果并检查它是否为 >= 7. En d’autres termes : les utiliser sans connaître l’opérateur ne vous servira à rien. Veuillez vous plonger dans le langage php.

    Bien que votre syntaxe fonctionne en PHP, la priorité des opérateurs peut également gâcher les résultats. Consultez la priorité des opérateurs de PHP. C'est l'une des raisons pour lesquelles les linters et les manuels de bonnes pratiques vous demanderont d'ajouter des parenthèses pour clarifier vos critères, plutôt que de vous fier à la priorité obscure des opérateurs.

    Maintenant, comment résoudre ce problème ? Encore une fois, veuillez examiner de plus près les opérateurs PHP et leur syntaxe. Il existe de bons cours, ainsi que le Manuel PHP officiel. Mais ne vous laissez pas en suspens, votre situation devrait ressembler à ceci :

    if ($usuario === 12 && ($banca <= 3 || $banca >= 7)) { ... }

    répondre
    0
  • Annulerrépondre