使用没有参数的函数

时间:2017-02-19 20:01:03

标签: php function parameters global

我在这里使用2个正则表达式函数,我想创建另一个函数,当2个正则表达式都是false时返回false,如果不是,则true

这里的问题是当我想在第三个中使用2个正则表达式函数时,我必须给它们参数,这是我认为不必要的,因为第三个函数只会返回一个简单的true或false。每当我为第3个中的2个正则表达式函数提供参数时,我得到undefined variable

我尝试使用global变量,但由于这是一个不好的做法,我正在寻找更好的解决方案。

代码:

function regex1($input)
{
    $regex= "/^[A-Za-z0-9 ]*$/";
    if (!preg_match($regex, $input))
    {
        return false;
    }
    else
    {
        return true;
    }
}

function regex2($input)
{
    $regex= "/^[A-Za-z0-9 ]*$/";
    if (!preg_match($regex, $input)) 
    {
        return false;
    }
    else
    {
        return true;
    }
}

function checkBoth()
{
    if (regex1($input) === false || regex2($input) === false)
    {
        return false;
    }
    else
    {
        return true;
    }
}

编辑: 我在其他文件中使用的checkBoth函数与其他2个正则表达式函数一起使用:

 if (!regex1($input))
 {
      // show error at the same time
 }
 if (!regex2($input))
 {
      // show error at the same time
 }

if(checkBoth())
{
    // success
}

1 个答案:

答案 0 :(得分:0)

function regex2($input,$secondVar=false)
{....

稍后在您需要添加代码的地方:

if($secondVar !== false){
// do whatever...
}

如果您无法使用" false"你可以清空字符串''或任何其他不会出现的值。