是否有更短的写作方式?
<?
if($_GET['id']==1 ||
$_GET['id']==3 ||
$_GET['id']==4 ||
$_GET['id']==5)
{echo 'does it really have to be this explicit?'};
?>
或许这样的事情?
<?
if($_GET['id']==1 || 3 || 4 || 5){echo 'this is much shorter'};
?>
答案 0 :(得分:24)
试试:
if ( in_array($_GET['id'], array(1, 3, 4, 5)) ) {}
答案 1 :(得分:2)
可能不会更短但更具可读性。尝试使用in_array()函数:
if (in_array($_GET['id'], array(1, 3, 4, 5)))
{
echo "What about this?";
}
答案 2 :(得分:1)
也许开关可能有帮助
switch($_GET['id']) {
case 1:
case 3:
case 4:
case 5:
echo 'Slect maybe :P';
break;
}
答案 3 :(得分:1)
您可以使用如下的正则表达式:
preg_match(['1-4']);
答案 4 :(得分:0)
声明一个数组:
$values = array(1,3,4,5);
获取变量
$id = $_GET['id'];
现在使用PHP in_array();
if(in_array($id, $values)){
//do something
}