变量“数据”可能尚未定义


Variable 'data' might have not been defined

我正在研究一个显示数据的函数,但不断收到警告"变量'数据'可能尚未定义"

  function getAllData() {
        $query = "SELECT * FROM patient, person WHERE patient.Patient = person.Personnummer ";
        if(!$sql = mysql_query($query)) {
            throw new exception("Error: CAn not execute the query.");
        } else {
            $num = mysql_num_rows($sql);
            if($num>0)
            {
                for($i=0; $i<$num; $i++)
                {
                    $data[$i] = mysql_fetch_array($sql);
                }
            }
        }
        return $data;  //<--Variable 'data' might have not been defined
    }
我想是

你的IDE在你执行脚本时给你这个警告,而不是php(它可能会,但警告会有所不同)。

要避免这种情况,请确保始终定义它:

function getAllData() {
    $data = array();
    $query = "SELECT * FROM patient, person WHERE patient.Patient = person.Personnummer ";
    ...

现在,如果找不到行,将从您的函数返回一个空数组。在当前代码中,php 会在运行时生成有关未定义变量的警告,当您运行脚本并且找不到任何行时。