示例#1
0
文件: Tpl.php 项目: AlekseyArh/cmf
 /**
  * Получение пути к файлу шаблона
  * @param string $tpl
  * @return string
  * @throws \Exception
  */
 public function getPath($tpl) : string
 {
     if (file_exists($tpl)) {
         return $tpl;
     } elseif (file_exists($this->setting['master_dir'] . '/' . $tpl)) {
         return $this->setting['master_dir'] . '/' . $tpl;
     } elseif (file_exists($this->setting['slave_dir'] . '/' . $tpl)) {
         return $this->setting['slave_dir'] . '/' . $tpl;
     } else {
         throw new \Exception($this->Translate->get('Запрашиваемый шаблон не существует', $this->config['language_dir'] . '/' . $this->setting['language'] . '.ini'));
     }
 }
示例#2
0
文件: handler.php 项目: arhone/cmf
<?php

/**
 * Обработчики ошибок
 * @author Алексей Арх
 * @var $e ErrorException
 */
if (ERROR_HANDLER) {
    set_error_handler(function ($severity, $message, $filename, $line) {
        if (!(error_reporting() & $severity)) {
            return;
        }
        if (ERROR_TRANSLATE) {
            $translate = \arh\translate\Translate::get($message, ROOT_DIR . '/translate/error/' . LANGUAGE . '.ini');
            if ($message !== $translate) {
                $message .= '<br>' . $translate;
            }
        }
        throw new ErrorException($message, 0, $severity, $filename, $line);
    });
}
set_exception_handler(function ($e) {
    $title = $e->getMessage();
    if ($e instanceof ErrorException) {
        $message = '';
    } else {
        if (EXCEPTION_HANDLER_LOG) {
            error_log(get_class($e) . ': ' . $e->getMessage() . PHP_EOL . $e->getTraceAsString(), 0);
        }
        $message = $e->getFile() . ' - ' . $e->getLine();
    }