我是php的新手。我想在这里完成的事情是看看我的html文档中最后一行的数字是什么(1,2,3 ...)并将该值放入变量并写入
你好,世界
to the html document but 2 or 3 lines above the last line. So right above the body close tag. I have been trying for days now and nothing seems to work.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);
?>
还有一个,但我似乎无法在我的测试文件夹中找到它们。我已经读过某个地方,可以将最后几行移动到临时内存中并写入一些内容,然后将行从临时内存移回文件中。
正如我之前提到的,我对php很新,还没有完全理解它!
如果这是你真正想要做的事情,我会在读取文件中创建所有行的数组,确定它的长度,更改第三个最后一个数组项的内容并在循环中输出所有内容。
也就是说,你似乎想要使用PHP的方式似乎非常不标准。如果你想读一下它,我打赌你会提出比这更优雅的解决方案。一个很好的起点是w3schools
我发现唯一有效的方法是删除代码的最后几行,写下你想要的东西,然后编写你删除的代码,或者使用一个读取文件并查找特定代码的php函数(变量或其他东西)否则它不应该在那个上下文中重复)并用另一段代码改变它。
试试这个以获得最后一行:PHP - Returning the last line in a file?