$ _GET无法在代码中使用,在升级到PHP7之前可以使用

时间:2019-08-29 19:16:35

标签: php-7

这是代码,我一直在获取错误函数,但未定义,但我正在尝试从mysql检索数据。该代码与PHP上的旧版本一起使用。

$date1 = $_GET['date1'];
$date2 = $_GET['date2'];

if (validateDate($date1){
    $date1status = true;
} else {
    $date1status = false;
}

if (validateDate($date2){
    $date2status = true;
} else {
    $date2status = false;
}

$bywho = $_GET['bywho'];
if (!empty($bywho) {
    $whostatus = true;
} else {
    $whostatus = false;
}

$programfilter = $_GET['programfilter'];

if ($programfilter == '') {
    $programfilterstatus = false;
} else {
    $programfilterstatus = true;
}

2 个答案:

答案 0 :(得分:0)

代码较少

$date1status=validateDate( $_GET['date1']) ?  true :false;

$date2status=$date2 =validateDate( $_GET['date2']) ?  true :false;

$whostatus=$_GET['bywho']   ? true : false;

$programfilter = $_GET['programfilter'] ?  true :false;

答案 1 :(得分:0)

我将在这里走出去,并假设未定义您的validateDate()方法,并且由于它不是PHP库的一部分,因此会出现错误。

checkdate()是php库的一部分。如果您只是尝试以公历格式验证日期,则应该使用checkdate()

https://www.php.net/manual/en/function.checkdate.php

$date1 = $_GET['date1'];
$date2 = $_GET['date2'];

if (checkdate($date1){
    $date1status = true;
} else {
    $date1status = false;
}

if (checkdate($date2){
    $date2status = true;
} else {
    $date2status = false;
}

$bywho = $_GET['bywho'];
if (!empty($bywho) {
    $whostatus = true;
} else {
    $whostatus = false;
}

$programfilter = $_GET['programfilter'];

if ($programfilter == '') {
    $programfilterstatus = false;
} else {
    $programfilterstatus = true;
}