添加 MVC默认层的常量定义

简化视图实例化
This commit is contained in:
thinkphp
2015-01-20 13:46:02 +08:00
parent 8872878e9c
commit 5b81a68e0c
6 changed files with 15 additions and 12 deletions

View File

@@ -232,6 +232,8 @@ class App {
if(MODULE_NAME && $config['common_module'] != MODULE_NAME && is_dir( APP_PATH . MODULE_NAME )) {
Hook::listen('app_begin');
define('MODULE_PATH', APP_PATH . MODULE_NAME . '/');
define('VIEW_PATH', MODULE_PATH.VIEW_LAYER.'/');
// 加载模块初始化文件
if(is_file( MODULE_PATH . 'init' . EXT )) {
include MODULE_PATH . 'init' . EXT;

View File

@@ -23,12 +23,7 @@ class Controller {
*/
public function __construct(){
// 模板引擎参数
$config = [
'tpl_path' => MODULE_PATH . 'View/',
'cache_path' => RUNTIME_PATH . 'Cache/',
];
$this->view = new View();
$this->view->engine(Config::get('template_engine'), $config);
//控制器初始化
if(method_exists($this, '_initialize'))

View File

@@ -129,7 +129,7 @@ class Loader {
* @param string $layer 业务层名称
* @return Object
*/
static public function model($name = '', $layer = 'Model') {
static public function model($name = '', $layer = MODEL_LAYER) {
if(empty($name)) {
return new Model;
}
@@ -159,7 +159,7 @@ class Loader {
* @param string $layer 控制层名称
* @return Object|false
*/
static public function controller($name, $layer = 'Controller') {
static public function controller($name, $layer = CONTROLLER_LAYER) {
static $_instance = [];
if(isset($_instance[$name.$layer])) {
return $_instance[$name . $layer];
@@ -199,7 +199,7 @@ class Loader {
* @param string $layer 要调用的控制层名称
* @return mixed
*/
static public function action($url, $vars = [], $layer = 'Controller') {
static public function action($url, $vars = [], $layer = CONTROLLER_LAYER) {
$info = pathinfo($url);
$action = $info['basename'];
$module = '.' != $info['dirname'] ? $info['dirname'] : CONTROLLER_NAME;

View File

@@ -19,7 +19,7 @@ namespace Think;
class Template {
protected $data = []; // 模板变量
protected $config = [ // 引擎配置
'tpl_path' => '', // 模板路径
'tpl_path' => VIEW_PATH, // 模板路径
'tpl_suffix' => '.html', // 默认模板文件后缀
'cache_suffix' => '.php', // 默认模板缓存后缀
'tpl_deny_func_list' => 'echo,exit', // 模板引擎禁用函数
@@ -29,7 +29,7 @@ class Template {
'strip_space' => false, // 是否去除模板文件里面的html空格与换行
'tpl_cache' => true, // 是否开启模板编译缓存,设为false则每次都会重新编译
'compile_type' => 'file', // 模板编译类型
'cache_path' => '', // 模板缓存目录
'cache_path' => CACHE_PATH, // 模板缓存目录
'cache_prefix' => '', // 模板缓存前缀标识,可以动态改变
'cache_time' => 0, // 模板缓存有效期 0 为永久,(以数字为值,单位:秒)
'layout_item' => '{__CONTENT__}', // 布局模板的内容替换标识

View File

@@ -30,7 +30,8 @@ class View {
'view_path' => '',
'view_suffix' => '.html',
'view_depr' => '/',
'view_layer' => 'View',
'view_layer' => VIEW_LAYER,
'engine_type' => 'think',
];
/**
@@ -60,6 +61,7 @@ class View {
public function __construct(array $config = []){
$this->config = array_merge($this->config, $config);
$this->engine($this->config['engine_type']);
}
/**

View File

@@ -25,9 +25,13 @@ defined('APP_PATH') or define('APP_PATH', dirname($_SERVER['SCRIPT_FILEN
defined('RUNTIME_PATH') or define('RUNTIME_PATH', realpath(APP_PATH).'/Runtime/');
defined('DATA_PATH') or define('DATA_PATH', RUNTIME_PATH.'Data/');
defined('LOG_PATH') or define('LOG_PATH', RUNTIME_PATH.'Log/');
defined('CACHE_PATH') or define('CACHE_PATH', RUNTIME_PATH.'Temp/');
defined('CACHE_PATH') or define('CACHE_PATH', RUNTIME_PATH.'Cache/');
defined('TEMP_PATH') or define('CACHE_PATH', RUNTIME_PATH.'Temp/');
defined('VENDOR_PATH') or define('VENDOR_PATH', THINK_PATH.'Vendor/');
defined('EXT') or define('EXT', '.php');
defined('MODEL_LAYER') or define('MODEL_LAYER', 'Model');
defined('VIEW_LAYER') or define('VIEW_LAYER', 'View');
defined('CONTROLLER_LAYER') or define('CONTROLLER_LAYER', 'Controller');
defined('APP_DEBUG') or define('APP_DEBUG', false); // 是否调试模式
if(function_exists('saeAutoLoader')){// 自动识别SAE环境