Php 有没有一种方法可以通过使用过滤输入来简化这个函数

Php 有没有一种方法可以通过使用过滤输入来简化这个函数,php,filter-input,Php,Filter Input,比如说使用filter_输入 基本上,代码检查GET或POST中是否存在参数。然后返回参数的值 我认为这一定很常见,它应该已经存在于一些内置函数中了使用$\u请求() 默认情况下包含$\u GET、$\u POST和$\u COOKIE内容的关联数组 因此,您的代码将如下所示: function valueFromGetOrPost($parameter) { $shvalue=NULL; if ($_GET[$parameter]) { $shvalue

比如说使用filter_输入

基本上,代码检查GET或POST中是否存在参数。然后返回参数的值


我认为这一定很常见,它应该已经存在于一些内置函数中了

使用
$\u请求
()

默认情况下包含$\u GET、$\u POST和$\u COOKIE内容的关联数组

因此,您的代码将如下所示:

function valueFromGetOrPost($parameter)
{
    $shvalue=NULL;
    if ($_GET[$parameter])
    {
        $shvalue=$_GET[$parameter];
    }
    else if (isset($_POST[$parameter]))

    {
        $shvalue=$_POST[$parameter];
    }
    return $shvalue;

}

您可以使用FastReturn来简化它,即

function valueFromGetOrPost($parameter)
{
    $shvalue=NULL;
    if ($_REQUEST[$parameter])
    {
        $shvalue=$_REQUEST[$parameter];
    }
    return $shvalue;

}
或者,您可以使用三元运算符,因为如果两个运算符都未设置,则返回NULL:

function valueFromGetOrPost($parameter){

    $shvalue=NULL;

    if (isset($_GET[$parameter])){
         return $_GET[$parameter];
    } else if (isset($_POST[$parameter])){
         return $_POST[$parameter];
    }
}

下面是我的建议,使用filter_input()函数:

function valueFromGetOrPost($parameter){

 $shvalue = (isset($_GET[$parameter]) ? $_GET[$parameter] : $_POST[$parameter]);

 return $shvalue;

}

也许可以添加php标签?请查看包含$\u GET和$\u POST的$\u请求(请参阅),这就是我要查找的内容。这可以用filter\u输入完成吗
function valueFromGetOrPost($parameter)
{
    $value = ($getValue = filter_input(INPUT_GET, $parameter))
        ? $getValue
        : filter_input(INPUT_POST, $parameter);

    return ($value) ? $value : NULL;
}