不应该出现的错误

2024-05-22

这是我的第一个问题,如果我做错了什么,请原谅!我正在尽力!

所以我得到了这个简单的代码

    <?php 
$fn = "file.txt"; 
$file = fopen($fn, "w+"); 
$size = filesize($fn); 

if($_POST['addition']) fwrite($file, $_POST['addition']); 

$text = fread($file, $size); 
fclose($file); 
?> 
<form action="<?=$PHP_SELF?>" method="post"> 
<input type="text" name="addition" value="<?php echo file_get_contents('file.txt');?>"/> 
<input type="submit"/> 
</form>

<iframe width="420" height="315" src="//<?php echo file_get_contents('file.txt');?>" frameborder="0" allowfullscreen></iframe>

一切正常,只是一个小问题......

Problem

该脚本工作正常,但问题是它输出错误:

警告:fread() 需要 2 个参数,其中 1 个在 /home/u799303375/public_html/beta/private/Test/test.php 第 8 行给出

我不知道如何解决这个问题

我已经尝试过的

  1. 我尝试删除 $size,但没有成功,它期望 2 个字符串只能得到 1 个字符串。
  2. 还没有...

帮助我,如果您需要一个工作示例,请询问现在不包括在内!


根据 PHP 文档,fopen($fn, "w+") 将文件指针设置为文件开头并将文件截断为零长度。我的假设是 fread 不接受文件大小 0(零)作为有效参数值。

从您的代码片段来看,您似乎正在尝试附加到此文件。您可能想尝试不同的 fopen 模式,例如“a+”。这将打开文件进行读写,将指针设置在文件末尾。如果该文件不存在,它将尝试创建它。

如果您想要读取文件的全部内容(看起来您正在尝试这样做); fread 文档建议使用 file_get_contents() 命令。写入文件并将其关闭后,请尝试以下命令:

$text = file_get_contents($fn);

但从您的代码片段来看,这看起来并不是真的有必要。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

不应该出现的错误 的相关文章