嗨我需要阅读一个文本文件,然后将其分解为两个部分然后将其与给出名称匹配然后如果它匹配则显示...到目前为止,我所做的代码在下面给出..但它不起作用。任何人告诉我这段代码有什么问题?
$name = "thomas";
$filename = file("land.txt");
//$contents = fread($handle, filesize($filename));
for($i=0; $i<count($filename); $i++)
{
$string = explode(":", $filename[$i]);
if($name == $string[1])
$id = $string[0];
}
echo $id;
这种情况应该显示“D1”;但它没有!!
"land.txt"
档案的内容
D1:thomas
D6:benny
D7:alwyn
D25:mathew
D9:peter
答案 0 :(得分:0)
尝试
$filename = file("land.txt", FILE_IGNORE_NEW_LINES);
或者
$string = explode(":", trim($filename[$i]));
答案 1 :(得分:0)
在这里
if($name == $string[1]) use if($name == trim($string[1]))
。
试试这个并告诉我。
答案 2 :(得分:0)
$name = 'thomas'; $content = file('land.txt'); $id = NULL; foreach($content as $no => $line){ $array = explode(':', $line); if($array[1] == $name) $id = $array[0]; } echo $id;