【问题标题】:PHP newline not working in text filePHP换行符在文本文件中不起作用
【发布时间】:2011-06-19 00:14:27
【问题描述】:

我正在使用 PHP 代码:

$numberNewline = $number . '\n';
fwrite($file, $numberNewline);

将 $number 写入文件。

由于某种原因,\n 出现在文件中。我在一个mac上。可能是什么问题?

【问题讨论】:

  • 不确定,但我认为 \n 仅在您使用 " not ' 时才有效('\n' 是错误的,而 "\n" 是正确的)
  • 刚开始,Mac、Windows 和 *nix 使用不同的换行符(通常)。为什么,只有天知道。它让我发疯了。搜索换行符,查看en.wikipedia.org/wiki/Newline
  • 哦,是的,您需要使用双引号字符串。

标签: php file text newline


【解决方案1】:

$numberNewline = $number 。 '\r\n';

fwrite($file, $numberNewline);

试试这个

【讨论】:

    【解决方案2】:

    以上方法都不适合我,但它是如此简单 - 这是代码...... 请使用 KISS 方法。

    echo file_put_contents("test.txt","\r\n \r\n$name \r\n$email \r\n$phone", FILE_APPEND);
    

    它设置一个新的空白行,然后一次追加一行。

    【讨论】:

      【解决方案3】:

      使用 PHP_EOL。 PHP_EOL 是独立于平台的好方法。

      $numberNewline = $number .PHP_EOL;
      fwrite($file, $numberNewline);
      

      PHP_EOL 是跨平台兼容的(DOS/Mac/Unix)。

      【讨论】:

      • 由于某种原因我想不起来如何做到这一点,所以我在网上询问并登陆了这里。看到这个回答我就想起来了。呃。这,真的,是最好的。其他的可能有效,但这是最正确的答案。
      • 是吗?例如,它会在 unix 上错误地保存原始电子邮件,而不是那么完美
      【解决方案4】:

      您看不到新行的原因是 .txt 文件将其数据写入堆栈。它从头开始写入,然后在完成后,闪烁的线(指示下一个字符要去哪里的线)回到开头。所以,你的 "\n" 必须放在开头。

      而不是写:

      <?php
           $sampleLine = $variable . "\n";
           $fwrite($file, $sampleLine);
      ?>
      

      你应该写:

      <?php
           $sampleLine = "\n" . $variable;
           $fwrite($file, $sampleLine);
      ?>
      

      【讨论】:

        【解决方案5】:

        如果插入“\n”没有产生任何结果,您也可以尝试添加“回车”和“换行”的“\r\n”。

        【讨论】:

          【解决方案6】:
          $numberNewline = $number . "\n";
          fwrite($file, $numberNewline);
          

          试试这个

          【讨论】:

          • 对我来说,这对新行也不起作用。唯一对我有用的是带有文本文件的“\r\n”
          • 取决于服务器的操作系统。
          • 好的。我的开发和生产服务器都不同(操作系统也不同),请问我应该使用哪一个?
          • 见下面chotesah的回答
          【解决方案7】:

          单引号中的'\n' 是文字\n
          双引号中的"\n" 被解释为换行符。

          http://php.net/manual/en/language.types.string.php

          【讨论】:

            猜你喜欢
            • 2011-05-10
            • 2011-03-05
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2014-04-12
            • 2020-10-28
            相关资源
            最近更新 更多