-2

スクリプトを実行する前に20秒待つことは可能ですか?

set_time_limit(20)を試してみましたが、ボタンをクリックすると、常にスクリプトが実行されます。

制限時間は、スクリプトが実行されているときの制限時間だけだったと思います。その後、スクリプトは停止します。

スクリプトが20秒待つのに役立つ関数を探しています。私はそれがjQueryで動作することを知っていますが、権利を保持しているのはYiiフレームワークでした。

以下にサンプルスクリプトがあります

$coco = mysql_query( "SELECT * FROM gameWaiting" );
if ( empty( $coco ) ) {
mysql_query( "INSERT INTO gameWaiting VALUE('', '$email', '$language')" );
$status = 0; // IF THE STATUS is equal to 0 means the db was empty so it will insert
// AND WAIT FOR OTHER PLAYER TO INSERT ALSO
} else {
mysql_query( "INSERT INTO gameWaiting VALUE('', '$email', '$language')" );
$status = 1; // IF THE STATUS is equal to 1 means the db was !empty so it will insert also
// BUT THERE is no need to wait for other player otherwise RAND() the user.
}

// NOW SET TIME HERE when it will INSERT to the game
if ( time was equal to set) {
// IF SOMEONE insert into gameWaiting it will create game
mysql_query( "INSERT INTO game VALUE('','name','email','language')" );
} else {
// No player was added
}

echo $status;

これが可能だといいのですが...

4

3 に答える 3

4

set_time_limit()スクリプトの最大実行時間を指定します。スクリプトを実行するまで待機する時間ではありません(ドキュメントを参照)。

PHPのsleep()関数を使用して、実行を強制的に指定された秒数だけ遅らせることができます。

sleep(20); 
于 2012-10-02T10:41:49.917 に答える
3

関数を使用してスクリプトを一時停止できsleep()ます。

sleep(20)

set_time_limitこれより高いことを確認してください

于 2012-10-02T10:41:24.707 に答える
1

このphpを試してください

sleep(10);

必要に応じて10を置き換えます

于 2012-10-02T10:41:39.997 に答える