`

PHP HMVC框架kohana 小结1

    博客分类:
  • PHP
阅读更多

   之前kohana 3的安装见:http://jackyrong.iteye.com/admin/blogs/1186006
1 在bootstrap中设置开发模式:
     Kohana::$environment = Kohana::DEVELOPMENT;
  再增加如下代码:
    if (isset($_SERVER['KOHANA_ENV']))
{
Kohana::$environment = $_SERVER[?KOHANA_ENV?];
}
  相关的值有:
PRODUCTION, STAGING, TESTING, and DEVELOPMENT.


2 设置时区
    date_default_timezone_set('America/Chicago');
3 启用相关的module
   Kohana::modules(array(  中的注释按需要打开

4 创建默认的config文件(这点比CI差了)
   在application\config下设置一个比如site.php的文件,放置日常用的变量,比如:
  <?php defined('SYSPATH') or die('No direct script access.');
return array(
'name' => 'Egotist',
'tag_line' => "Let's talk about me!"
);
   则获得其变量时,这样:
  $site_config = Kohana::config('site');
    $site_name = $site_config['name'];
$tag_line = $site_config['tag_line'];
   甚至可以这样只加载其中的某个变量:
   $site_name = Kohana::config('site.name');
  
   也可以数组的形式加载变量,比如:
    return array(
'name' => 'Egotist',
'details' => array(
'tag_line' => "Let's talk about me!",
'alt_tag_line' => "Today's subject: ME!";
);
); 
 加载:
   $site_config = Kohana::config('site');
// Echo site name and details
echo $site_config['name']; // Egotist
echo $site_config['details']['tag_line'] // Lets talk about me!
echo $site_config['details']['alt_tag_line'] // Today's subject: ME!
  也可以:
echo Kohana::config('site.details.tag_line');

5 controller的命名规范,必须符合如下
   Controller_xxxx,XXX放在classes/controller/xxx.php,比如
  Controller_User_Profile则为 classes/controller/user/profile.php
6 给view传递数据
  
  controller中:
    public function action_index()
{
//3.2只能用这个方法
$view = View::factory('welcome')
->set('site_name', 'Egotist')
->set('random', rand(1,10));
$this->response->body($view);
}

  view中:
  <h1>Welcome to <?php echo $site_name; ?></h1>
<?php echo $random; ?> is a number between 1 and 10


  也可以用bind绑定
  
$view = View::factory('welcome')->bind('site_name', $site_name)
->bind('random', $random);
$site_name = 'Egotist';
$random = rand(1, 10);

$this->response->body($view);

7 使用template controller
    class Controller_Welcome extends Controller_Template
  {
     $content = View::factory('welcome')
->bind('random', $random);
$random = rand(1, 10);
$content->site_name = 'Egotist Beta';
$this->template->content = $content;
}
    }
   
   页面中直接输出:
    <?php echo $content;?>

8 设置全局变量,以方便在各页面中直接读取
      View::set_global('site_name', 'Egotist Beta');
   之后可以在任何view中读取:
        <?php echo $site_name; ?>
9 在控制层中,写一个基类,保存一些基本的信息,比如CSS,JAVASCRIPT,常量可以这

样:
    abstract class Controller_Application extends Controller_Template {
public function before()
{
parent::before();
View::set_global('site_name', 'Egotist Beta');
$this->template->content = '';
$this->template->styles = array();
$this->template->scripts = array();
}
  
   其他PHP控制层文件再继承之,十分好用
2
1
分享到:
评论

相关推荐

    PHP框架Kohana v3.3.1

    Kohana 是一款纯 PHP5 的框架,基于 MVC 模式开发, 它的特点就是高安全性,轻量级代码,容易使用。 2009年9月发布了3.0版本,支持HMVC模式。

    Koseven是一个兼容PHP7的优雅开源面向对象的HMVC框架

    Koseven是一个优雅的,开源的,面向对象的HMVC框架,由一群志愿者使用PHP7构建。 它的目标是迅速,安全和小巧。 它基于并且几乎完全兼容已解散的Kohana 3.3.X.

    HMVCPHP框架ClanCats.zip

    ClanCats 是一个 HMVC PHP 框架,要求: PHP &gt;= 5.3.9 PHP JSON PHP MCrypt PHP Multibyte String Apache with mod_rewrite or Nginx HMVC模式即Hierarchical-Model-View-Controller模式,也可以叫做Layered ...

    PHP开发框架kohana3.3.1在nginx下的伪静态设置例子

    Kohana 是一款纯 PHP5 的框架,基于 MVC 模式开发, 它的特点就是高安全性,轻量级代码,容易使用,并且最新的kohana3支持HMVC模式。以下是在nginx环境下的kohana伪静态配置参考例子: server { listen 80; ...

    [php框架]非官方_Kohana_3_中文译本.zip

    Kohana php框架当前有2个都在开发的版本。 这2个版本被称为 Kohana2.x和 Kohana3.x。从2.x升级到3.x没什么意义,◎API变化很人。 因此,它们不是缑承关系的版公,它们可被认为是两个不同的框架。 Kohana2.x和3.x有什么...

    尝试:精心设计的小型PHP 5.2+ HMVC框架

    精心设计PHP 5.2+ HMVC框架注意:目前,phunction与PHP 5.5+尚不完全兼容。 我目前正在使用版本3.0.0以及经过高度改进的代码库和更好的文档进行工作。用法: ph([$id])-&gt;[{[{Sub}-&gt;]*Class}-&gt;]{Method}($arguments);...

    limovico:PHP 的轻量级 HMVC 框架

    Limovico 是一个轻量级的分层模型视图控制器框架,用于使用 PHP 构建网站。 它带有几个核心和库类来处理网站的主要功能。 特征 模块化模型-视图-控制器结构。 控制器可以调用其他模块的模型和视图。 轻体重的宝宝...

    CodeIgniter(PHP MVC开源框架)v3.1.10.zip

    CodeIgniter 是一个小巧但功能强大的 PHP 框架,作为一个简单而“优雅”的工具包,它可以为 PHP 程序员建立功能完善的 Web 应用程序。如果你是一个使用共享主机,并且为客户所要求的期限而烦恼的开发人员,如果你...

    kohana-phpredis:FROZEN - Kohana 的 Redis

    用于 Kohana 的 PHPRedis 是一个优雅的、开源的、面向对象的 HMVC 框架,由一组志愿者使用 PHP5 构建。 它的目标是快速、安全和小巧。 是一个扩展,提供用于与 Redis 键值存储通信的 API。 它是用 C 编译的。 将 ...

    kohana-project:基于 Kohana 的项目分布

    Kohana PHP 框架 - Composer 项目是一个优雅的、开源的、面向对象的 HMVC 框架,由一组志愿者使用 PHP5 构建。 它的目标是快速、安全和小巧。 这个包包含以下来自 Kohana 源的原始文件application/bootstrap.php...

    HMVC-Templates:一个简单但功能强大且灵活的代码点火器框架库,带有 HMVC 扩展,用于管理 HTML 视图模板

    #HMVC-模板一个简单但功能强大且灵活的 Code Igniter 框架库,带有 HMVC 扩展,用于管理 HTML 视图模板。 这个库和模板系统使得快速创建 HTML 模板文件变得非常简单和容易,以将标记从页眉和页脚部分可视化呈现,...

    Laravel开发-hmvc

    Laravel开发-hmvc 拉拉维尔HMVC。

    webmis:WebMIS是轻量级、高性能、面向对象的HMVC框架!

    WebMIS是轻量级、高性能、面向对象的HMVC框架! Home: Admin: uanme: admin passwd: admin 安装 1) 创建项目 composer create-project webmiss/webmis mvc 2) 导入数据库 public/db/mvc.sql 3) 更新项目 composer ...

    RhapsodyJS:用于史诗级应用程序的 NodeJS HMVC 框架

    RhapsodyJS 是一个运行在 Express 4 之上的 HMVC 框架,它还为您的模型创建了一个 RESTful API,支持套接字、中间件/策略系统以及许多其他功能,请亲自尝试看看! 安装 RhapsodyJS 要安装 RhapsodyJS,您必须运行...

    coldbox-platform:用于 ColdFusion (CFML) 的现代、流畅和基于约定的 HMVC 框架

    ColdBox Hierarchical MVC 是面向 ColdFusion (CFML) 开发人员的事实上的企业级 HMVC 框架。 它得到专业支持、基于约定、模块化、高度可扩展和高效。 ColdBox 快速入门。 ColdBox 为您提供了现代 ColdFusion (CFML) ...

    kohana-3.2.0 资源

    Kohana 是一款纯 PHP5 的框架,基于 MVC 模式开发, 它的特点就是高安全性,轻量级代码,容易使用。 2009年9月发布了3.0版本,支持HMVC模式

    MyQEE开源PHP多项目开发框架 v2.0.1.zip

    MyQEE PHP Framework 是基于PHP5开发的完美支持HMVC模式的PHP框架。MyQEE借鉴了国外优秀框架的设计思路,优雅、实用的代码是我们追求的目标。 MyQEE v2.0 RC3更新日志: 修正window下大小写问题导致获取base_url错误...

    koseven:Koseven Kohana分支与PHP7兼容

    Koseven是一个由志愿者团队使用PHP7构建的优雅,开源且面向对象的HMVC框架。 它的目标是Swift,安全,小巧。 它基于已失效的 3.3.X并完全兼容。 根据发布的Koseven可以合法地用于任何开源,商业或个人项目。可以作为...

Global site tag (gtag.js) - Google Analytics