这是我工作的一个代码的部分:PHP多如果...... ELSEIF声明
if($access == 2)
{
if ($permre['pages'] == indi_add)//
{echo "show page";}
if ($permre['pages'] == mass_add)//
{echo "show page";}
if ($permre['pages'] == export)//
{echo "show page";}
}
elseif ($access == 0)
{
if ($permre['pages'] == indi_add)//
{echo "dont show page";}
if ($permre['pages'] == mass_add)//
{echo "dont show page";}
if ($permre['pages'] == export)//
{echo "dont show page";}**
}
我创建一个页面,在执行诸如$access == 2
的条件有多个值。一些值包括:indi_add,mass_add和export。然后我想用这些值创建3个条件,如上所示。
但是,执行此代码时,只有第一个if语句正在执行,其余不是。有没有一种方法可以让php一次检查3条if语句并执行所要求的操作?
加上,我不能使用if(condition1 && condition2 && condition3)
,因为有可能不满足其中一个条件。
那么,即使第一条语句是真或假,我该如何执行所有语句呢?我实际上得到了诸如indi_add,mass_add和从phpmyadmin数据库导出的值。查询是这样的:
“从访问权限选择页访问= 2”。
由于上面的查询,我得到了上面提到的页面值。回声页面只是一个例子。在我的实际编码中,如果access == 2
的声明为true,则结果是将激活特定页面。我正在尝试做类似访问控制的操作。此外,在幕后,管理员可以更改每个页面的访问级别。因此,每次访问级别更改时,上面的查询可能会带来不同的结果。我希望找到一种方法,只要他们是真的,我就可以执行if条件。
您是使用编辑过的缩进还是先前将echo语句注释掉? – Dave 2011-01-13 07:24:25
srry是一个noob,但你是什么意思通过编辑缩进... – neelima 2011-01-13 08:08:08
[替换条件与多态](http://sourcemaking.com/refactoring/replace-conditional-with-polymorphism) – Gordon 2011-01-13 09:02:04