Основные операции с файлами PHP - PullRequest
2 голосов
/ 20 января 2011

Извиняется за такой основной вопрос, но я сошел с ума, отлаживая следующий код:

$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. Сам код не очень хорош (например, регулярные выражения лучше подойдут для этой задачи), так как я написал его на скорую руку, но я хочу запустить его перед переписыванием.

1 Ответ

5 голосов
/ 20 января 2011

strpos возвращает логическое значение false, а не строковое значение 'false'. Попробуйте это:

if ($pos === false) {
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...