我正在尝试使用PHP在文本文件中进行编写。每个$result
字符串都必须在txt文件中的新行上,但当我键入该字符串时,所有$result
字符串都在同一行上。问题出在哪里?
这是我的代码:
$result=date("Y.m.d").'!'.$_POST['name'].'!'.$_POST['price'].'!'.$selectedGroup."'n";
file_put_contents('data.txt', $result,FILE_APPEND)
使用PHP_EOL
预定义常量:
file_put_contents('data.txt', $result . PHP_EOL, FILE_APPEND);
来自手册:
PHP_EOL(字符串)
此平台的正确"终点"符号。
自PHP 4.3.10和PHP 5.0.2 起提供
为了测试您的输入,您可以尝试使用file()
输出您的文件数据(它应该正确地确定行分隔):
print_r(file('data.txt'));
如果它包含多个元素,那么您的行将被分隔。
问题是您的编辑器(windows记事本?)没有将'n
视为新行。
有一种新的线路
windows: 'r'n
linux/unix: 'n
mac: 'r
如何验证结果?你在编辑器中打开文件吗?如果您在Windows上执行此操作,请注意,某些编辑器会将"''r''n"显示为新行,而将"''n"视为空格或忽略它。