ホームページ  >  記事  >  バックエンド開発  >  PHP で「最大実行時間」エラーを適切にキャッチする方法

PHP で「最大実行時間」エラーを適切にキャッチする方法

DDD
DDDオリジナル
2024-11-01 12:25:02311ブラウズ

How to Catch the

PHP での「最大実行時間」エラーの捕捉

PHP の致命的なエラー「最大実行時間 30 秒を超えました」は、スクリプトは、サーバーに設定された最大実行時間制限を超える時間を消費します。多くの場合、この制限を増やすことが推奨されますが、エラーを適切に処理することも重要です。

エラーのキャッチ

PHP には、処理用の組み込み例外が提供されていません。このエラー。ただし、次の回避策を使用できます:

  1. シャットダウン関数を登録します:
    スクリプトが終了したときに (通常または終了時に) register_shutdown_function() を使用してカスタム関数を実行します。
  2. 最後のエラーを取得:
    シャットダウン関数内で、error_get_last() を使用して最後のエラー メッセージを抽出し、入力します。これにより、エラー情報を含む配列が返されます。

例:

<code class="php">function shutdown()
{
    $a = error_get_last();

    if ($a == null) {
        echo "No errors";
    } else {
        echo "Error: " . $a['message'] . "\n";
        echo "Type: " . $a['type'] . "\n";
    }
}

register_shutdown_function('shutdown');
ini_set('max_execution_time', 1); // Set a low execution time limit for testing
sleep(3); // Simulate a long-running task</code>

この例では、shutdown という名前のシャットダウン関数を登録しました。エラーが発生していない場合は、「エラーはありません」と表示されます。エラーが発生した場合は、エラー メッセージが表示され、次のように入力します。

追加リソース:

  • PHP マニュアル: http://www.php。 net/manual/en/function.set-error-handler.php#106061
  • PHP マニュアル: http://www.php.net/manual/en/function.register-shutdown-function.php

以上がPHP で「最大実行時間」エラーを適切にキャッチする方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。