whileループで条件が真でない限り、コードは$ user_login変数の内容を出力します。ループ内に直接変数を宣言すると、これは問題ありません。しかし、宣言が外に出されたときになぜそれが掛かっているのか理解できますか?コードは以下の通りです。Whileループは変数の宣言がループの外側で行われたときにコンピュータをハングさせます
<?php
$logins = 'log/logins.txt'; // The login file
$file_handle = fopen($logins, 'r') or die('Can\'t open login records');
$user_login = fgets($file_handle);
// Now let's loop
echo '<ol>';
while (!feof($file_handle)) {
// When I put this $user_login variable outside the loop the computer hangs
// Otherwise the code works fine
// $user_login = fgets($file_handle);
echo '<li>' . $user_login . '</li><br>';
}
echo '</ol><br>';
fclose($file_handle);
?>
エラーログには何もありませんか? –
ああ、エラーログ。 :) [03-Jul-2016 05:46:07] PHP致命的なエラー:40秒でC:\ wamp \ www \ logins \ index.phpで120秒を超える最大実行時間 - [03-Jul-2016 05: 46:18アジア/マニラ] PHPスタックトレース: - [03-Jul-2016 05:37:28アジア/マニラ] PHP 2. feof()C:\ wamp \ www \ logins \ index.php:35 – Joey