【发布时间】:2011-01-20 08:46:01
【问题描述】:
为这样的基本问题道歉,但我已经疯狂调试以下代码:
$fname = 'results.txt';
$handle = fopen($fname,"a+");
if ($handle){
$cnt = file_get_contents('./results.txt');
$pos = strpos($cnt,":");
if ($pos === 'false'){
$str = htmlspecialchars($_COOKIE['username']).": ".$_COOKIE['score'];
fwrite($handle,$str);
}
if ($cnt) echo $cnt;
else echo 'Error in file_get_contents!<br />';
}
else echo '<span>Error while opening file</span>';
$cnt 返回 false,无论我做什么。我试图将参数更改为“results.txt”,完整的 url 到文件 - 仍然没有进展。我在 php.net 上查找了该函数,从我看到的情况来看,语法是正确的。
感谢您的宝贵时间。
附:代码本身并不好(例如,正则表达式更适合此任务),因为我匆忙编写它,但我想在重写之前让它运行。
【问题讨论】:
-
错误报告是否开启?在文件顶部试试
error_reporting(E_ALL); -
不要将 html 转义的数据放入数据库或类似数据库的东西(如文本文件)中。你可以在输出东西时这样做。否则,如果您在某些时候需要未转义的数据(例如对于纯文本电子邮件),就会遇到问题。
标签: php file-manipulation