在下面的代码中,$output 是一串行,每行长度为 804 个字符,包括每行末尾的换行符。在每行的位置 454 处有一个“Y”。它只是一个普通的旧“Y”,如“是”。
$fh = fopen($filename_with_path,"w");
fwrite($fh,$output);
fclose($fh);
出于某种原因,在查看创建的文件时,整个输出似乎完好无损,但位置 454 是空白,并且找不到“Y”。
我可以在上述代码之前或之后有一个 die($output),并且输出包含“Y”。我让脚本通过电子邮件将 $output 的内容发送给我,其中包含“Y”。但是当我查看创建的文件时(并且我已经确认每次运行脚本时都会重新创建它),而不是“Y”有一个空格。(我已经使用“cat”查看了文件系统上的文件,也查看了在记事本中打开的网络下载文件,但“Y”不存在。
当创建的文件中有两行时,它是 1608 字节长,这是有道理的,因为每行都有 804。所以这真的使它看起来像一个 Y 正在与一个空白交换。输出中还有其他 Y 在文件中显示得很好。
我对此完全感到困惑。有任何想法吗?
谢谢!