首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >PHP:检查变量是否存在,以及是否有等于某个值的值

PHP:检查变量是否存在,以及是否有等于某个值的值
EN

Stack Overflow用户
提问于 2010-10-24 17:51:56
回答 12查看 66.6K关注 0票数 43

我有(或没有)一个来自我的查询字符串的变量$_GET['myvar'],我想检查这个变量是否存在,以及它的值是否与if语句中的某个值相对应:

我所做的和所想的并不是最好的方法:

if(isset($_GET['myvar']) && $_GET['myvar'] == 'something'):做点什么

我的问题是,有没有办法在不两次声明变量的情况下做到这一点?

这是一个简单的例子,但想象一下,必须比较许多这样的$myvar变量。

EN

Stack Overflow用户

发布于 2014-11-11 19:40:53

这与公认的答案类似,但改为使用in_array。在这种情况下,我更喜欢使用empty()。我还建议使用PHP 5.4.0+中提供的新的速记数组声明。

代码语言:javascript
运行
复制
$allowed = ["something","nothing"];
if(!empty($_GET['myvar']) && in_array($_GET['myvar'],$allowed)){..}

下面是一次检查多个值的函数。

代码语言:javascript
运行
复制
$arrKeys = array_keys($_GET);
$allowed = ["something","nothing"];

function checkGet($arrKeys,$allowed) { 
    foreach($arrKeys as $key ) {
        if(in_array($_GET[$key],$allowed)) {
            $values[$key];
        }
    }
    return $values;
}
票数 0
EN
查看全部 12 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4007752

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档