php 脚本在屏幕上显示结果,但不会将结果导出到文本文件。执行 php c:\myscript.php > output.txt
可以工作,但不包含换行符(与屏幕上显示的方式相反)。
将结果导出到文本文件时我缺少什么?
使用命令行在屏幕上运行的脚本:
<?php
$list1 = array('a1', 'a2', 'a3');
$list2 = array('b1', 'b2',);
$list3 = array('c1', 'c2', 'c3');
foreach ($list1 as $i) {
foreach ($list2 as $j) {
if ( $j == $i ) { continue; }
foreach ($list3 as $k) {
if ( $k == $j ) { continue; }
if ( $k == $i ) { continue; }
echo "$i$j$k\n";
}
}
}
?>
我尝试将其插入到末尾,但出现错误。
$sListText = file_get_contents("output.txt");
echo nl2br($sListText);
我尝试了这个,得到空文本文件:
$output = null;
foreach....
file_put_contents("output.txt", $output, FILE_APPEND);
最佳答案
在linux机器上php myscript.php>output.txt
工作正常,并且有换行符,您使用Windows,所以您必须更改
echo "$i$j$k\n";
到
echo "$i$j$k\r\n";
希望有帮助。
关于php - 将 php 脚本结果写入文本文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44297019/