搜索结果中"Undefined offset"错误



我制作了一个小型代码,用于在txt文件中搜索,它有效,但是我在代码的这一部分中遇到了错误:

function searchLastName(Array $array, $value)
{
    $lastresult = '';
    foreach ($array as $subarray) {
        if (isset($subarray[1]) && stristr($subarray[1], $value) && $value != "") {
            $lastresult .= $subarray[0] . " " . $subarray[2] . " " . $subarray[1] . "<br />";
        }
    }
    return $lastresult;
}
$file = fopen("classlist.txt", "r");
$filestring = "";
while (!feof($file)) {
    $tempstring = fgets($file);
    $filestring .= $tempstring . "<br />";
    $line_of_text .= $tempstring;
}

第17行中的第一个错误"未定义变量:line_of_text"

第5行中的第二个错误"未定义偏移:"

我做错了什么?

您必须在段循环之前初始化变量:

 $line_of_text = '';

$subarray很可能只有一个或两个元素,因此键2不确定。