为这样的基本问题道歉,但我疯了调试以下代码:
$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上查找了这个函数,从我看到的,语法是正确的。
感谢您的时间。
P.S。代码本身并不好(例如,正则表达式更适合这个任务),就像我在急速写的那样,但是我希望在重写之前让它运行。
答案 0 :(得分:5)
strpos
返回布尔值false
,而不是字符串值'false'。试试这个:
if ($pos === false) {