2

为这样的基本问题道歉,但我已经疯狂调试以下代码:

$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 上查找了该函数,据我所见,语法是正确的。

谢谢你的时间。

PS 代码本身并不好(fe 正则表达式更适合此任务),因为我匆忙编写它,但我想在重写之前让它运行。

4

1 回答 1

5

strpos返回 boolean false,而不是 'false' 的字符串值。试试这个:

if ($pos === false) {
于 2011-01-20T00:44:19.207 回答