zoukankan      html  css  js  c++  java
  • Zend Framework 多模块配置 (一)

    因项目需要用到Zend Framework,所以最近在网上找了一些这方面的资料,现在整理一下留作备用,如有什么错误的地方欢迎指点。

    1)目录结构:

    |-- repos

    |--|-- application

    |--|--|-- Botstrap.php -------------------------- 全局bootstrap文件

    |--|--|-- configs

    |--|--|--|-- application.ini  ---------------------- 全局配置文件

    |--|--|-- modules

    |--|--|--|-- default

    |--|--|--|--|-- Bootstrap.php ------------------- 模块bootstrap文件

    |--|--|--|--|-- configs

    |--|--|--|--|--|-- module.ini --------------------- 模块配置文件

    |--|--|--|--|-- controllers

    |--|--|--|--|--|-- ErrorController.php

    |--|--|--|--|--|-- IndexController.php

    |--|--|--|--|-- models

    |--|--|--|--|--|-- Albums.php

    |--|--|--|--|-- views

    |--|--|--|--|--|-- layout

    |--|--|--|--|--|--|-- default.phtml

    |--|--|--|--|--|-- scriptx

    |--|--|--|--|--|--|-- error

    |--|--|--|--|--|--|--|-- error.phtml

    |--|--|--|--|--|--|-- index

    |--|--|--|--|--|--|--|-- index.phtml

    |--|-- data

    |--|--|-- log

    |--|--|--|-- application.log ----------------------- 错误日志(目录应有可写权限)

    |--|-- library

    |--|--|-- Personal

    |--|--|--|-- Plugin

    |--|--|--|--|-- Loader.php ----------------------- 控制器插件

    |--|--|--|--|-- Log.php -------------------------- 日志插件

    |--|--|-- Zend

    |--|-- public

    |--|--|-- index.php ------------------------------ 入口文件

    |--|--|-- .htaccess

    2)配置文件 

    application.ini

    [production]
    phpSettings.display_startup_errors             = 0
    phpSettings.display_errors                         = 0
    includePaths.library                                  = APPLICATION_PATH "/../library"
    bootstrap.path                                           = APPLICATION_PATH "/Bootstrap.php"
    bootstrap.class                                          = "Bootstrap"
    resources.frontController.moduleDirectory    = APPLICATION_PATH "/modules"
    resources.modules[]                                   = "default"
    
    [staging : production]
    
    [testing : production]
    phpSettings.display_startup_errors              = 1
    phpSettings.display_errors                          = 1
    
    [development : production]
    phpSettings.display_startup_errors              = 1
    phpSettings.display_errors                          = 1
    
    database.adapter                                        = "Pdo_Mysql"
    database.params.host                                 = "localhost"
    database.params.username                          = "root"
    database.params.password                          = "123456"
    database.params.dbname                             = "test"
    database.params.driver_options.1002           = "SET NAMES UTF8" 

    module.ini

    [production]
    phpSettings.display_startup_errors               = 0
    phpSettings.display_errors                           = 0
    
    default.resources.layout.layout                      = "default"                       //设置default模块的视图名称为default.phtml                               
    default.resources.layout.layoutPath                = APPLICATION_PATH "/modules/default/views/layout"          //设置default模块视图的文件path
    
    [staging : production]
    
    [testing : production]
    phpSettings.display_startup_errors                = 1
    phpSettings.display_errors                            = 1
    
    [development : production]
    phpSettings.display_startup_errors                = 1
    phpSettings.display_errors                            = 1

    3)入口文件:

    index.php

    defined('BASE_PATH')
            || define('BASE_PATH', realpath(dirname(__FILE__)));
    
    // Define path to application directory
    defined('APPLICATION_PATH')
        || define('APPLICATION_PATH', BASE_PATH . '/../application');
    
    // Define application environment
    defined('APPLICATION_ENV')
        || define('APPLICATION_ENV', (getenv('APPLICATION_ENV') ? getenv('APPLICATION_ENV') : 'production'));
    
    // Ensure library/ is on include_path
    set_include_path(implode(PATH_SEPARATOR, array(
        realpath(APPLICATION_PATH . '/../library'),
        get_include_path(),
    )));
    
    /** Zend_Application */
    require_once 'Zend/Application.php';
    
    // Create application, bootstrap, and run
    $application = new Zend_Application(
        APPLICATION_ENV,
        APPLICATION_PATH . '/configs/application.ini'
    );
    $application->bootstrap()
                ->run();
    

    .htaccess

    SetEnv APPLICATION_ENV development
    
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} -s [OR]
    RewriteCond %{REQUEST_FILENAME} -l [OR]
    RewriteCond %{REQUEST_FILENAME} -d
    RewriteRule ^.*$ - [NC,L]
    RewriteRule ^.*$ index.php [NC,L]
  • 相关阅读:
    jquery插件之jquery.extend和jquery.fn.extend的区别
    block,inline和inline-block的区别
    css 中 div垂直居中的方法
    Native App vs Web App 以及 Hybrid App的实现原理
    小结
    传输层的端口与TCP标志中的URG和PSH位
    常见路由表生成算法与收敛路由
    NAT技术与代理服务器
    CRC校验
    BinarySearchTree-二叉搜索树
  • 原文地址:https://www.cnblogs.com/showblog/p/1789230.html
Copyright © 2011-2022 走看看