PHP:在尝试替换文本文件中的DATA时出错

时间:2015-06-13 05:22:27

标签: php

文本文件名:Fruits.txt

此文件包含4行:

Apple
red
sweet
1kg

如果我添加有关APPLES的数据,那么上面的行应该被新数据替换,但如果我添加有关任何其他水果的数据,那么它应该附加在文本文件中。

错误获取:注意:未定义的偏移量:-1和注意:未定义的偏移量:1

我的代码:

$dir = "./fruits.txt";

$end = 0;
$name = $_GET['fruits'];
$handle = fopen($dir,"r");
while(!feof($handle)){
$line = fgets($handle);
$end++;
}
fclose($handle);

$line = file($dir);

for($i=0;$i < ($end -1); ++$i){

$fruit_name = trim($line[$i]);
if($name == $fruit_name){

$contents = file_get_contents($dir);
$contents = str_replace($line[$i + 3],'',$contents);
file_put_contents($dir,$contents);

$contents = file_get_contents($dir);
$contents = str_replace($line[$i + 2],'',$contents);
file_put_contents($dir,$contents);

$contents = file_get_contents($dir);
$contents = str_replace($line[$i + 1],'',$contents);
file_put_contents($dir,$contents);

$contents = file_get_contents($dir);
$contents = str_replace($line[$i],'',$contents);
file_put_contents($dir,$contents);
}
}
$new_data = "$name\r\n$color\r\n$taste\r\n$qty\r\n";

$file = fopen("$dir", "a");
fwrite($file,$new_data);

当只有一个条目时:上面的代码完全添加了在txt文件中添加数据,并在找到匹配项时替换...

当有多个条目时:它显示上述错误..

我做错了什么,请帮助我......?

或者有更好的方法来实现我想要的......?

Thanx提前......:)

0 个答案:

没有答案