我是否正确使用了 fgetc

Am I using fgetc correctly?

本文关键字:fgetc 是否      更新时间:2023-09-26

这是我的PHP:

  $file = fopen("1stock.js", "c+");
  $number = fseek($file, 20, SEEK_CUR);
  $fh = fgetc($number);
  fwrite($file, $fh -1);

我的第 20 个字符是我想在加载 php 文件时number - 1执行的数字。为什么这不起作用?

我还希望为.js文件中的多个其他位置执行此操作,看起来有点像这样:

var item1_stockS = 5  //20th character including space.
var item1_stockM = 8
var item1_stockL = 3

我有一个看起来像这样的 HTML 表单:

<form action="stock.php" method="post">
Item1 S:<input value="remove" name="remove1S" type="submit" /> <br/> <script type="text/javascript">document.write(item1_stockS);</script><br/>
Item1 M:<input value="remove" name="remove1M" type="submit" /> <br/> <script type="text/javascript">document.write(item1_stockM);</script> <br/>
Item1 L:<input value="remove" name="remove1L" type="submit" /><br/> <script type="text/javascript">document.write(item1_stockL);</script> <br/>

因此,当您单击其中一个按钮时,它会从相应的库存号中删除 1 个项目。

当你做fgetc文件里的当前位置会前进一步,所以当你写的时候,你会写到数字所在的位置。在写作之前,你必须寻求后退一步。

另外,如果值为零,请注意,因为您将写入两个字符-1并将覆盖数字后面的换行符。

您遇到的问题是 fgetc 函数的参数应该是文件句柄。请参阅fgetc文档!