从数组中读取时出现内爆错误

时间:2015-12-05 14:53:12

标签: php fwrite implode

我正在尝试从文件中删除用户。 这就是我从我的数组中删除用户的方法:

if (isset($_GET['delete'])) {
    $id = key($_GET['delete']);
    for ($i = 0; $i < count($liste); $i++) {
        if ("$i" == "$id") {
            array_splice($liste, $id, 1);
        } else {
            //do something
        }
    }
    saveDataToFile('passwd.txt', '$liste');
}

然后我使用其他函数将其写入文件中。但我总是得到错误

implode(): Invalid arguments passed 

这是功能。

      function saveDataToFile($fileName, $liste){
    $file=fopen($fileName,"w");
    for ($i = 0; $i < count($liste); $i++) {
        $zArray=$liste[$i]; 
        $zeile=implode("|", $zArray);
        if(strlen($zeile) > 0){ 
            $zeile=$zeile."\r\n"; 
            fwrite($file, $zeile);
        }
    }
    fclose($file);
}

更新
我还发现每次刷新都会删除它。 当我删除我想要的那个时,我想我需要休息一下。但是休息不起作用。

1 个答案:

答案 0 :(得分:0)

您将$ liste作为字符串而非数组传递,此处

saveDataToFile('passwd.txt', '$liste');

愿这与你合作:

saveDataToFile('passwd.txt', $liste);