我有这段代码:
$fp = fopen($pathAndFileName, "a+");
$n4 = count($output2);
for ($iii=0; $iii<$n4; $iii++)
{
fwrite($fp, $output2[$iii]);
}
fclose($fp);
例如,结果是:
A
B
(blank line)
如何删除最后一个空行?
由于
答案 0 :(得分:1)
在不知道$output2
内部的内容的情况下,您可以选择trim内容,例如:
for ($iii=0; $iii<$n4; $iii++) {
if($iii == ($iii<$n4) -1) {
$output2[$iii] = trim($output2[$iii]);
}
fwrite($fp, $output2[$iii]);
}
如果循环已到达结尾,trim
变量。就个人而言,我只是将内容添加到数组中,然后使用新行进行插入:
$content = [];
while(true) {
$content[] = "string1";
}
//more
fwrite($f, implode("\n", $content));
答案 1 :(得分:1)
您可以在文件的最后一行使用函数rtrim()来修剪该行的任何尾随空格(包括换行符)。
$fp = fopen($pathAndFileName, "a+");
$n4 = count($output2);
for ($iii=0; $iii<$n4; $iii++) {
$output = $output2[$iii]);
if($iii == $n4-1) {
$output = rtrim($output);
}
fwrite($fp, $output);
}
fclose($fp);