Ignore:
Timestamp:
2012/03/04 04:20:00 (14 years ago)
Author:
Seasoft
Message:

#1633 (エラーハンドリングの改善)
#1676 (ログファイルを分離する)
#1677 (デバッグログの出力設定と画面へのエラー出力設定とを分離する)
#1678 (SQL の実行ログを提供する)
#1613 (typo修正・ソース整形・ソースコメントの改善)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/version-2_12-dev/data/class/util/SC_Utils.php

    r21564 r21582  
    161161 
    162162    /** 
    163      * 例外エラーページの表示 
    164      * 
    165      * @param string $debugMsg デバッグ用のメッセージ 
    166      * @return void 
     163     * 前方互換用 
     164     * 
     165     * @deprecated 2.12.0 trigger_error($debugMsg, E_USER_ERROR) を使用すること 
    167166     */ 
    168167    function sfDispException($debugMsg = null) { 
    169         require_once CLASS_EX_REALDIR . 'page_extends/error/LC_Page_Error_SystemError_Ex.php'; 
    170  
    171         $objPage = new LC_Page_Error_SystemError_Ex(); 
    172         register_shutdown_function(array($objPage, 'destroy')); 
    173         $objPage->init(); 
    174         if (!is_null($debugMsg)) { 
    175             $objPage->addDebugMsg($debugMsg); 
    176         } 
    177         if (function_exists('debug_backtrace')) { 
    178             $objPage->backtrace = debug_backtrace(); 
    179         } 
    180         GC_Utils_Ex::gfPrintLog($objPage->sfGetErrMsg()); 
    181         $objPage->process(); 
    182  
    183         exit(); 
     168        trigger_error('前方互換用メソッドが使用されました。', E_USER_WARNING); 
     169        trigger_error($debugMsg, E_USER_ERROR); 
    184170    } 
    185171 
     
    16761662 
    16771663    /** 
    1678      * 現在の URL を取得する 
    1679      * 
    1680      * @return string 現在のURL 
     1664     * 前方互換用 
     1665     * 
     1666     * @deprecated 2.12.0 GC_Utils_Ex::getUrl を使用すること 
    16811667     */ 
    16821668    function sfGetUrl() { 
    1683         $url = ''; 
    1684  
    1685         if (SC_Utils_Ex::sfIsHTTPS()) { 
    1686             $url = 'https://'; 
    1687         } else { 
    1688             $url = 'http://'; 
    1689         } 
    1690  
    1691         $url .= $_SERVER['HTTP_HOST'] . $_SERVER['REQUEST_URI'] . '?' . $_SERVER['QUERY_STRING']; 
    1692  
    1693         return $url; 
    1694     } 
    1695  
    1696     /** 
    1697      * バックトレースをテキスト形式で出力する 
    1698      * 
    1699      * @return string テキストで表現したバックトレース 
     1669        trigger_error('前方互換用メソッドが使用されました。', E_USER_WARNING); 
     1670        return GC_Utils_Ex::getUrl(); 
     1671    } 
     1672 
     1673    /** 
     1674     * 前方互換用 
     1675     * 
     1676     * @deprecated 2.12.0 GC_Utils_Ex::toStringBacktrace を使用すること 
    17001677     */ 
    17011678    function sfBacktraceToString($arrBacktrace) { 
    1702         $string = ''; 
    1703  
    1704         foreach (array_reverse($arrBacktrace) as $backtrace) { 
    1705             if (strlen($backtrace['class']) >= 1) { 
    1706                 $func = $backtrace['class'] . $backtrace['type'] . $backtrace['function']; 
    1707             } else { 
    1708                 $func = $backtrace['function']; 
    1709             } 
    1710  
    1711             $string .= $backtrace['file'] . ' ' . $backtrace['line'] . ':' . $func . "\n"; 
    1712         } 
    1713  
    1714         return $string; 
    1715     } 
    1716  
    1717     /** 
    1718      * 管理機能かを判定 
    1719      * 
    1720      * @return bool 管理機能か 
     1679        trigger_error('前方互換用メソッドが使用されました。', E_USER_WARNING); 
     1680        return GC_Utils_Ex::toStringBacktrace($arrBacktrace); 
     1681    } 
     1682 
     1683    /** 
     1684     * 前方互換用 
     1685     * 
     1686     * @deprecated 2.12.0 GC_Utils_Ex::isAdminFunction を使用すること 
    17211687     */ 
    17221688    function sfIsAdminFunction() { 
    1723         return defined('ADMIN_FUNCTION') && ADMIN_FUNCTION; 
    1724     } 
    1725  
    1726     /** 
    1727      * フロント機能かを判定 
    1728      * 
    1729      * @return bool フロント機能か 
     1689        trigger_error('前方互換用メソッドが使用されました。', E_USER_WARNING); 
     1690        return GC_Utils_Ex::isAdminFunction(); 
     1691    } 
     1692 
     1693    /** 
     1694     * 前方互換用 
     1695     * 
     1696     * @deprecated 2.12.0 GC_Utils_Ex::isFrontFunction を使用すること 
    17301697     */ 
    17311698    function sfIsFrontFunction() { 
    1732         return defined('FRONT_FUNCTION') && FRONT_FUNCTION; 
    1733     } 
    1734  
    1735     /** 
    1736      * インストール機能かを判定 
    1737      * 
    1738      * @return bool インストール機能か 
     1699        trigger_error('前方互換用メソッドが使用されました。', E_USER_WARNING); 
     1700        return GC_Utils_Ex::isFrontFunction(); 
     1701    } 
     1702 
     1703    /** 
     1704     * 前方互換用 
     1705     * 
     1706     * @deprecated 2.12.0 GC_Utils_Ex::isInstallFunction を使用すること 
    17391707     */ 
    17401708    function sfIsInstallFunction() { 
    1741         return defined('INSTALL_FUNCTION') && INSTALL_FUNCTION; 
     1709        trigger_error('前方互換用メソッドが使用されました。', E_USER_WARNING); 
     1710        return GC_Utils_Ex::isInstallFunction(); 
    17421711    } 
    17431712 
     
    18561825 
    18571826        $xml = $pluginsXml->asXML(); 
    1858         if (strlen($xml) == 0) SC_Utils_Ex::sfDispException(); 
     1827        if (strlen($xml) == 0) trigger_error('', E_USER_ERROR); 
    18591828 
    18601829        $return = file_put_contents(PLUGIN_REALDIR . 'plugins.xml', $pluginsXml->asXML()); 
    1861         if ($return === false) SC_Utils_Ex::sfDispException(); 
     1830        if ($return === false) trigger_error('', E_USER_ERROR); 
    18621831        return $return; 
    18631832    } 
     
    18711840     * 
    18721841     * PHP4の上位互換用途。 
    1873      * FIXME PHP4でテストする。(現状全くテストしていない。) 
    18741842     * @param SimpleXMLElement $pluginsXml プラグイン XML 
    18751843     * @return integer ファイルに書き込まれたバイト数を返します。 
Note: See TracChangeset for help on using the changeset viewer.