如何使用标头函数返回定义的常量

时间:2019-02-03 16:45:53

标签: php

我有我的验证系统,如果有问题,我想返回它,例如EMPTY,但是EMPTY被定义为函数头。

我尝试了类似下面的方法,但是它一直都在使用,不仅当name和pass字段为空时。我可以写,如果... {header ...}但我不想那样。怎么做?

include 'errors.php';
if(empty($name) || empty($pass){
      return EMPTY;
      exit();}
in another file: errors.php
define('EMPTY', header("Location: ../index.php?error=empty"))

1 个答案:

答案 0 :(得分:0)

它一直被使用,因为当您写

define('EMPTY', header("Location: ../index.php?error=empty"));

运行标头函数,并将其返回值分配给常量EMPTY。 如果您要在错误上运行特定功能,并且要在error.php中定义它们,则应该具有

//error.php
function got_error($cause){
    switch($cause){
         case 'EMPTY':
             header("location:../index.php?error=empty");
         break;
         case 'SHORT':
             header("location:../index.php?error=short");
         break;
         default:
              header("location:../index.php?error=unknown");
    }
   exit();
}

include 'errors.php';
if(empty($name) || empty($pass)){
    got_error('EMPTY');
}
if(strlen($pass) < 5){ //example of other error
    got_error('SHORT');
}