<?php
/**
* JingYes 框架使用的基本函数
* 使用者可以预先定义这些函数
* @author Yu HengChun <achun.shx@qq.com>
* @copyright Copyright © 2011 Yu HengChun
* @license http://www.opensource.org/licenses/bsd-license.php
*/
namespace JingYes;
/**
* JingYes class风格配置
* 其它类里面也采用这种风格
*/
final class Config
{
public static $conf=array(
);
/**
* 配置扩展
* @param string $key 键
* @param array $val 值
*/
public static function extend($key,$val){
if(is_array(self::$conf[$key]) and is_array($val))
self::$conf[$key]=array_merge(self::$conf[$key],$val);
else
self::$conf[$key]=$val;
}
}
if(!function_exists('JingYes\ThrowException')){
/**
* 抛出异常信息
* @param string $type 错误类型信息
* @param string $message 错误细节信息模板
* @param integer $code 错误类型代码,采用http错误代码
* @param array $args 传递给 $message的参数,用于生成最终信息
*/
function ThrowException($type,$message,$code=501,array $args=array()) {
$type=Config::$conf['error'][$type]?:$type;
$message=message($message,$args);
throw new \Exception($type.':'.$message,$code);
}
}
if(!function_exists('JingYes\message')){
/**
动态加载js的方法
* 对提示信息进行转换翻译
* @param string $message 错误细节信息模板
* @param array $args 传递给 $message的参数,用于生成最终信息
*/
function message($message,array $args=array()) {
$message=stripslashes($message);
$message="\$message=\"$message\";";
extract($args);
eval($message);
return $message;
}
}