我write
串data
到文本file
里面for循环:
$vokatra_res = fopen(RP_MAIN . "vokatra.res","a+");
$p = $vokatra->lireTout(array(), array("type_id")); // getting rows from database
for($l=0 ; $l<$p['cnt'] ; $l++) {
$str = $p[$l]['produit_code'] . '|' . $p[$l]['type_id'] . '|' . $p[$l]['produit_lib'] . "\r\n";
fwrite($vokatra_res, $str);
}
fclose($vokatra_res);
结果,文件末尾有一个空行。那么,如何在关闭文件之前删除此空白行?
您可以通过将多余的换行符添加到除最后一行之外的所有行中来避免编写多余的换行符:
$newline = ($l < $p['cnt'] - 1) ? "\r\n" : "";
$str = $p[$l]['produit_code'] . '|' . $p[$l]['type_id'] . '|' . $p[$l]['produit_lib'] . $newline;
$newline
仅当循环未处理最后一行数据时,此代码才会填充变量。的含量$newline
(含有是否为“\ r \ n”或不)被连结到各字符串的末尾。
另外:三元运算符可能很难理解;考虑下面的代码会产生相同的结果:
if ($l < $p['cnt'] - 1) {
$newline = "\r\n";
else {
$newline = "";
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句