带有 OR 运算符的 PHP if 语句 [关闭]
Posted
技术标签:
【中文标题】带有 OR 运算符的 PHP if 语句 [关闭]【英文标题】:PHP if statement with OR operators [closed] 【发布时间】:2017-03-07 07:40:19 【问题描述】:我在我的网站上使用以下声明。我想知道 selected_plan_id 是 4、5 还是 6。我使用的任何 OR 变体都会破坏我的代码。
<?php if($CURRENT_USER['selected_plan_id'] == '5'): ?>
这是我目前尝试过的:
<?php if($CURRENT_USER['selected_plan_id'] == '5' or '4' or '6'): ?>
:(错误
<?php if($CURRENT_USER['selected_plan_id'] == '"5", "4", "6"'): ?>
:(为每个用户显示这个
<?php if($CURRENT_USER['selected_plan_id'] == '5'): or if($CURRENT_USER['selected_plan_id'] == '4'): or if($CURRENT_USER['selected_plan_id'] == '6'): ?>
:(错误
【问题讨论】:
我在您的代码中没有看到任何or
。
向我们展示您尝试了什么以及为什么它们没有工作/您遇到了什么错误。
具体问题!
未来参考:How to ask a question
【参考方案1】:
使用||
声明。
<?php if($CURRENT_USER['selected_plan_id'] == '4' || $CURRENT_USER['selected_plan_id'] == '5' || $CURRENT_USER['selected_plan_id'] == '6'): ?>
或者
使用in_array()
。
$arr = Array (4,5,6);
<?php if(in_array($CURRENT_USER['selected_plan_id'],$arr)): ?>
【讨论】:
请不要用答案奖励不好的问题。【参考方案2】:<?php if( ( $CURRENT_USER['selected_plan_id'] == '4') || ( $CURRENT_USER['selected_plan_id'] == '5') || ( $CURRENT_USER['selected_plan_id'] == '6') ) : ?>
这将查看 $CURRENT_USER['selected_plan_id']
是 4 还是 5 或 6
【讨论】:
请不要用答案奖励不好的问题。 来自您自己的个人资料 - “我是一名开发人员,发现自己在 SO 既要帮助其他人,也可以通过询问和阅读其他人来向他人学习问题。” - 我认为帮助他人没有问题。 我帮助遵循 SO 的标准和规则集的人,这里没有显示任何努力,此外,这不是高级 php 或复杂的逻辑,它是一些更基本的东西,很容易研究. 我不同意它可以很容易地研究,我已经搜索了一个多小时,我用我的代码尝试的每个 OR 示例都不起作用。道歉,但我没有包括我尝试过的东西,因为它们都不起作用(所以没有看到重点)。我试过的一些现在在那里 很遗憾,并不是每个人每次进入网站时都会去寻找规则,他们只是想知道答案。【参考方案3】:我的直觉会把我引向in_array(),因为这似乎是表达这个想法的一种更简单的方式。 以下是“或”运算符的手册页。 http://php.net/manual/en/language.operators.logical.php http://php.net/manual/en/language.operators.precedence.php
【讨论】:
以上是关于带有 OR 运算符的 PHP if 语句 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
带有 BETWEEN 运算符的 MySQL IF 语句,未显示为有效
PHP 3 运算符 if...else...elseif 语句