使用学生编号搜索名称列表,只输入部分名称

时间:2013-04-19 12:10:08

标签: php

我正在创建一个网页,其中包含学生编号或学生姓名的一部分,然后搜索学生列表,然后返回学生编号和全名。当用户输入学号时,我已经完成了。 我现在唯一的问题是当用户输入名称时。我在考虑使用strpos(),但我不知道接下来该做什么。

这是我到目前为止所得到的:

function search_name_list($file, $info)
{
    // get name list array
    $students = get_name_list($file)['students'];
    if (!$students)
    {
        return false;
    }

    // the user searched for the student number
    if (ctype_digit($info))
    {
        // return the name corresponding to the student number if found
        if (array_search($info, $students['snum']))
        {
            return $students['name'][$info];
        }
    }

    // the user searched for the name
    else
    {
        // convert array into string
        $content = implode('|', $students);

        // TODO...
    }

    return false;
}

我希望代码中的注释足够清楚,以帮助您了解问题。此外,如果您有关于使整体功能更好的建议,那么您也可以这样说。

编辑:我想我需要一个例子。

例如:数组包含[“20111122953”,“Acosta,Arbyn”,“20111112345”,“Mayer,Patrick”]。但是用户只输入了“Arbyn”或“Acosta”,然后我需要用我所拥有的那个子串搜索数组。然后返回与我姓名对应的姓名和学号。

1 个答案:

答案 0 :(得分:0)

您可以遍历搜索结果: