2

私はこのコードを持っています:

$file = fopen($_SERVER['DOCUMENT_ROOT'].'crawl.txt', 'w+');
$time1 = microtime(true);
......
$time2 = microtime(true);
$time = $time2-$time1;
$text = "Training id: ".$this->realIdTraining." Time: ".$time."\r\n";
fwrite($file, $text);
fclose($file);
sleep(5);

私はこのエラーをキャッチします:Warning: fwrite(): 120 is not a valid stream resource

何かアイデアはありますか?

みんな:正しく書かれた最初の行を追加する必要があります。(!!!)

4

2 に答える 2

2

書き込み用にファイルを開く許可をテストする

$file = fopen($_SERVER['DOCUMENT_ROOT'].'/crawl.txt', 'w+');
if(!$file)
{
     echo 'cannot write to file';
}
else
{
    $time1 = microtime(true);
    ...
    $time2 = microtime(true);
    $time = $time2-$time1;
    $text = "Training id: ".$this->realIdTraining." Time: ".$time."\r\n";
    fwrite($file, $text);
    fclose($file);
    sleep(5);
}
于 2012-08-16T13:01:04.470 に答える
0

$this->realIdTraining と $this->realIdTraining の間のコードがどこかに存在する場合、これは機能するはずです。

また、最初にファイルが存在するかどうかを確認し、必要に応じて書き込み権限などを確認します。

<?php

$file = fopen($_SERVER['DOCUMENT_ROOT'].'/crawl.txt', 'w+');
$time1 = microtime(true);
...
$time2 = microtime(true);
$time = $time2-$time1;
$text = "Training id: ".($this->realIdTraining)." Time: ".$time."\r\n";
fwrite($file, $text);
fclose($file);
sleep(5);

?>
于 2012-08-16T12:59:03.893 に答える