从 php 写入 html 中的特定行

Write in a specific line in html from php

我是 php 的新手。我要在这里完成的事情是查看我的 html 文档中最后一行的编号 (1,2,3...) 并将该值放入变量中并写入

Hello world

到 html 文档,但比最后一行高 2 或 3 行。所以就在 body 关闭标记的上方。我已经尝试了几天,但似乎没有任何效果。

sampletext.html

    <html>
<head>
     <title>WEB</title>
   </head>
 <body>
   <p>WEB test 335</p>
 </body>
    </html>

这个不输出:

<?php
$file = new SplFileObject('sampletext.html');
$file->seek(3);     // Seek to line no. 4
echo $file->current(); // Print contents of that line
?>

我也试过这个,但是它只写在文件的末尾:

<?php
 $file = fopen("sampletext.html","a");  //I also tried w,a+,r,r+ 
 $txt = "Hello world";
 fseek(fp, 0, SEEK_END);
 fwrite($file, $txt);
 fclose($file);
 ?>

还有更多,但我似乎无法在我的测试文件夹中找到它们。 我在某处读到可以将最后几行移到临时内存中并 fwrite 一些东西,然后将这些行从临时内存移回文件中。

正如我之前提到的,我对 php 还很陌生,还没有完全理解它!

试试这个获取最后一行:PHP - Returning the last line in a file?

并写入最后一行尝试:Delete last line and check data in text file

如果这是你真正想要做的事情,我会在读取文件中创建一个包含所有行的数组,确定它的长度,更改倒数第三个数组项的内容并循环输出所有内容。

也就是说,您似乎想要使用 PHP 的方式似乎很不标准。如果您稍微了解一下,我敢打赌您会想出比这更优雅的解决方案。一个好的起点是 w3schools

我发现唯一可行的方法是删除代码的最后几行,写下你想要的,然后写下你删除的代码,或者使用 php 函数读取文件并查找特定代码(变量或其他内容,但不应在该上下文中重复)并用另一段代码更改它。