2 回答

TA貢獻1784條經驗 獲得超7個贊
使用 array_map 修剪所有線條。使用 unset 從數組中刪除匹配項。您不需要使用 $panel_out 變量。然后使用 implode 將數組轉換為由新行分隔的字符串。
$panel_dir = 'host.txt';
$panel_data = array_map('trim', file($panel_dir));
foreach($panel_data as $key => $panel_line) {
if($panel_line == $panel_del) {
unset($panel_data[$key]);
}
}
$f_panel = fopen($panel_dir, "w+") or die("Error");
fwrite($f_panel, implode("\n", $panel_data));
fclose($f_panel);

TA貢獻1906條經驗 獲得超10個贊
文件的最后一行不以換行符結尾。這在 Unix 上是不好的做法,因為許多文本處理工具都希望每一行都以換行符結尾,即使是最后一行。$panel_out但如果這是您想要的,您需要在寫入文件之前刪除最后一個元素末尾的換行符。
$last = count($panel_out)-1;
if ($last >= 0) {
$panel_out[$last] = rtrim($panel_out[$last]);
}
- 2 回答
- 0 關注
- 181 瀏覽
添加回答
舉報