タグ

2010年2月24日のブックマーク (4件)

  • PHP 4とregister_shutdown_function()に気をつけろ!! - よくきたblog

    register_shutdown_function()はマニュアルを見てもらえばわかるのですが,PHPのスクリプト処理が終了した後に実行される関数(メソッド)を登録する関数です. ※指摘があり再確認したらregister_shutdown_functionは期待通りの動作をするようでした…(涙 PHP 4(バージョン4.4.4)で構築しているある案件で ・常に最後に実行される処理を用意したい. ・デバッグモードのときだけプロファイルを表示するようにしたい ってことでregister_shutdown_function()を何も考えずに使用した. コアクラスのようなものを作成していたので,シャットダウンメソッドで上記を実装. 例えばこんな感じ. class Core { var $flag; function Core() { $this->enableFlag(); : : : regi

    abetomotomo
    abetomotomo 2010/02/24
    例外処理。egister_shutdown_function(
  • PHPで Fatal Error時の状況を調べる方法

    PHPでFatal Errorが発生すると以降の処理が実行されない。 かつ、try/catchやset_error_handler()ではFatal Errorを捕まえられない。 なので通常は、Fatal Errorが起きたときの詳しい状況はログに残らない。 (例えばエラーが起きたPHPのファイル名はログに残るが、それを呼び出した側のPHP名や、データの状況は分からない。) しかし、register_shutdown_function()を使えばエラーが起きたときの状況をログに残せる。 register_shutdown_function('shutdownHandler'); function shutdownHandler(){ $error = error_get_last(); if ($error['type']) { //エラーの場合のみ error_log(...); //必

    abetomotomo
    abetomotomo 2010/02/24
    例外処理。いろいろ取得
  • PHPリファレンス(try-catch)

    try ( // 例外発生の可能性がるコード } catch (例外クラス名 変数) { // 例外発生時の処理 } try節の中には、例外が発生する可能性がある正常系処理のコードを記述します。 catch節の「()」には、第一引数に、try節で発生した例外をcatchする例外クラス名を指定します。 第二引数には、catchした例外クラスのインスタンスを代入する変数を指定します。

    abetomotomo
    abetomotomo 2010/02/24
    try-catchとか
  • 例外処理 - phpspot

    のように戻り値のチェックをしていましたが、エラーというものは、呼び出し側がエラー制御を行うのではなく、呼ばれた側で、どういうエラーがあったか、というものがあった方が自然で、呼ばれた側がエラー処理を行うため、モジュールの場合より再利用性が高くなるでしょう。 更に上記では、どういうエラーが起こってエラーが出ているのかということが想像しにくいですね。 そこで try~catch です。 // exception クラスを継承した MyException(例外クラス)の定義 class FileNotFoundException extends exception { function FileNotFoundException($_error) { $this->error = $_error; } function getException() { return $this->error; }

    abetomotomo
    abetomotomo 2010/02/24
    例外処理。try-catchなど