<tfoot id='MoDRc'></tfoot>

      • <bdo id='MoDRc'></bdo><ul id='MoDRc'></ul>

      <i id='MoDRc'><tr id='MoDRc'><dt id='MoDRc'><q id='MoDRc'><span id='MoDRc'><b id='MoDRc'><form id='MoDRc'><ins id='MoDRc'></ins><ul id='MoDRc'></ul><sub id='MoDRc'></sub></form><legend id='MoDRc'></legend><bdo id='MoDRc'><pre id='MoDRc'><center id='MoDRc'></center></pre></bdo></b><th id='MoDRc'></th></span></q></dt></tr></i><div id='MoDRc'><tfoot id='MoDRc'></tfoot><dl id='MoDRc'><fieldset id='MoDRc'></fieldset></dl></div>
    1. <small id='MoDRc'></small><noframes id='MoDRc'>

      1. <legend id='MoDRc'><style id='MoDRc'><dir id='MoDRc'><q id='MoDRc'></q></dir></style></legend>
      2. 使用php,如何插入文本而不覆盖文本文件的开头

        时间:2023-10-30
          <tbody id='5cxC7'></tbody>

        <tfoot id='5cxC7'></tfoot>
        <i id='5cxC7'><tr id='5cxC7'><dt id='5cxC7'><q id='5cxC7'><span id='5cxC7'><b id='5cxC7'><form id='5cxC7'><ins id='5cxC7'></ins><ul id='5cxC7'></ul><sub id='5cxC7'></sub></form><legend id='5cxC7'></legend><bdo id='5cxC7'><pre id='5cxC7'><center id='5cxC7'></center></pre></bdo></b><th id='5cxC7'></th></span></q></dt></tr></i><div id='5cxC7'><tfoot id='5cxC7'></tfoot><dl id='5cxC7'><fieldset id='5cxC7'></fieldset></dl></div>
          • <bdo id='5cxC7'></bdo><ul id='5cxC7'></ul>

            <small id='5cxC7'></small><noframes id='5cxC7'>

                • <legend id='5cxC7'><style id='5cxC7'><dir id='5cxC7'><q id='5cxC7'></q></dir></style></legend>

                  本文介绍了使用php,如何插入文本而不覆盖文本文件的开头的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

                  问题描述

                  我有:

                  <?php
                  
                  $file=fopen(date("Y-m-d").".txt","r+") or exit("Unable to open file!");
                  
                  if ($_POST["lastname"] <> "")
                  {
                     fwrite($file,$_POST["lastname"]."
                  ");
                  }
                  
                  fclose($file);
                  
                  ?>
                  

                  但它会覆盖文件的开头.如何让它插入?

                  but it overwrites the beginning of the file. How do I make it insert?

                  推荐答案

                  我不完全确定您的问题 - 您是要写入数据并且不让它覆盖现有文件的开头,还是写入新文件数据到现有文件的开头,在其后保留现有内容?

                  I'm not entirely sure of your question - do you want to write data and not have it over-write the beginning of an existing file, or write new data to the start of an existing file, keeping the existing content after it?

                  要插入文本而不覆盖文件的开头,您必须打开它以进行附加 (a+ 而不是 r+)

                  To insert text without over-writing the beginning of the file, you'll have to open it for appending (a+ rather than r+)

                  $file=fopen(date("Y-m-d").".txt","a+") or exit("Unable to open file!");
                  
                  if ($_POST["lastname"] <> "")
                  {
                     fwrite($file,$_POST["lastname"]."
                  ");
                  }
                  
                  fclose($file);
                  

                  如果您尝试写入文件的开头,则必须读入文件内容(请参阅 file_get_contents),然后将新字符串和文件内容写入输出文件.

                  If you're trying to write to the start of the file, you'll have to read in the file contents (see file_get_contents) first, then write your new string followed by file contents to the output file.

                  $old_content = file_get_contents($file);
                  fwrite($file, $new_content."
                  ".$old_content);
                  

                  上述方法适用于小文件,但您可能会在尝试使用 file_get_conents 读取大文件时遇到内存限制.在这种情况下,请考虑使用 rewind($file),它设置文件文件流开头句柄的位置指示器.注意使用rewind()时,不要用a(或a+)选项打开文件,如:

                  The above approach will work with small files, but you may run into memory limits trying to read a large file in using file_get_conents. In this case, consider using rewind($file), which sets the file position indicator for handle to the beginning of the file stream. Note when using rewind(), not to open the file with the a (or a+) options, as:

                  如果您以追加(a"或a+")模式打开文件,则无论文件位置如何,您写入文件的任何数据都将始终被追加.

                  If you have opened the file in append ("a" or "a+") mode, any data you write to the file will always be appended, regardless of the file position.

                  这篇关于使用php,如何插入文本而不覆盖文本文件的开头的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

                  上一篇:INSERT 查询产生“警告:mysqli_num_rows() 期望参数 1 为 mysqli_result,给定布尔 下一篇:插入后获取自动生成的 ID

                  相关文章

                  <tfoot id='TAdFq'></tfoot>
                  • <bdo id='TAdFq'></bdo><ul id='TAdFq'></ul>

                  1. <i id='TAdFq'><tr id='TAdFq'><dt id='TAdFq'><q id='TAdFq'><span id='TAdFq'><b id='TAdFq'><form id='TAdFq'><ins id='TAdFq'></ins><ul id='TAdFq'></ul><sub id='TAdFq'></sub></form><legend id='TAdFq'></legend><bdo id='TAdFq'><pre id='TAdFq'><center id='TAdFq'></center></pre></bdo></b><th id='TAdFq'></th></span></q></dt></tr></i><div id='TAdFq'><tfoot id='TAdFq'></tfoot><dl id='TAdFq'><fieldset id='TAdFq'></fieldset></dl></div>

                    <small id='TAdFq'></small><noframes id='TAdFq'>

                      <legend id='TAdFq'><style id='TAdFq'><dir id='TAdFq'><q id='TAdFq'></q></dir></style></legend>