kohana 框架学习

kohana 框架是一个相对比较小众的php框架 ,是有一个开源组织开发的mvc框架。

Controller 篇

            1.接受参数

                     $this -> request -> param('key') 返回的是route路由里定义的参数

                       Arr :: get($_GET, 'key')  获取的是GET作用于里key对应的值

              2.  重定向

                   $this -> request -> redirect()

            3.  页面渲染一个模板

                $this -> resposne -> body(string $content)

            4. before()  and after() 的作用

                before 是action在被执行之前所执行的操作, 你不必改变Controller 的__construct() 方法

                after  是action执行之后所执行的操作


Medel 篇:

             1.如何使用model

                 自定义model类要继承Model基类,如果要使用数据库继承Model_database 即可

                 

        

插入数据
$sql="INSERT INTO `kohana`.`user` (`name` ,`age` )VALUES ( 'test', '1'), ( 'test2', '2')";
$dat=$this->_db->query(Database::INSERT,$sql,false);

# return 返回的两个值中,第一个是自动增长的ID,如果有的话,第二是影响的行数

                   

更新数据
$sql="UPDATE `ko_users` SET `user_name` = 'test111q1'  ";
$dat=$this->_db->query(Database::UPDATE,$sql,false);
#return 返回影响行数


删除数据
$sql="DELETE FROM `kohana`.`user` WHERE `user`.`id` = 1";
$dat=$this->_db->query(Database::DELETE,$sql,false);
#return 返回影响行数

    

查询数据

$sql="select * from ko_com_var";
$res=$this->_db->query(Database::SELECT,$sql,false);

#得到所有查询数据
$res->as_array();

#得到一条查询结果
$res->offsetGet(0);

#取得特定记录的指定字段值
$res->get("name");

#移动指针并取得指定字段
$res->next()->get("name");
$res->prev()->get("name");

#计算取得结果总数
$res->count();
#还有其他方法不在一一罗列,请查看手册

 

 第二种(查询器模式)

$query = DB::insert('user', array('user', 'age'))
		->values(array('test1', '11'));
$query->execute();
#返回和上面一样

   

$query = DB::update('user')
		->set(array('age' => '100'))
		->where('user', '=', 'test1');
$query->execute();
#返回和上面一样

 

$query = DB::delete('user')
		->where('age', 'IN', array('100', '11'));
$query->execute();
#返回和上面一样

 

$query = DB::select()->from('user')->where("id","=","1");
$res=$query->execute();
#和上面一样,$res是Database_Result_Cached对象
$res->as_array();
#其他方法不演示了~

$query = DB::query(Database::INSERT, 'INSERT INTO users (username, password) VALUES (:user, :pass)')      
->bind(':user', $username)    
->bind(':pass', $password);  
foreach ($new_users as $username => $password){    
	$query->execute();
}


View 篇

            1.如何在action里使用一个模板

                View  :: factory(' temlate fiels path)

            2. 如何往页面上传值

                  View  :: factory(' temlate fiels path, data数组(传到页面上的数据))  

            3. 如何在模板里包含公用模板

                在模板里面 <?php echo View :: factory('temlate files path') ?>

            4.如何往公共模板里传值

                View :: set_golbal('key', $val) 或者bind_global('key', $val) 

            5.

  

route路由篇

        


 config 篇

            1如何自定义一个配置文件

                  普通的PHP文件,存储在config /目录中,返回一个关联数组

            2.如何访问

                   $config = Kohana::$config->load('myconf');

                   $options = $config->get('options')

                或者  $options = $config->get('myconf.options')


     message篇

             $forms = Kohana::message('message 文件名', 'key' )

            message文件返回一个关联数组,key是代表键,多维数组的 key1.key2访问

    

    log 日志篇

            第一种方法Kohana_log_File

                    $writer = new Kohana_Log_File(APPPATH . 'logs/mylog');

                    $writer -> write(array(array('level' => Kohana_Log::INFO, 'body' => 'log body', 'time' => time())));

            第二种方法

                 $writer = new Kohana_Log_File(APPPATH . 'logs/mylog');

                 Kohana_Log::instance() ->attach($writer) ->add(Kohana_Log::INFO, 'log body');



   


            

附 http://www.kofans.org/3.2/guide/kohana/conventions#编码标准

转载于:https://my.oschina.net/adam_li/blog/285057

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值