admin
管理员
管理员
  • UID1
  • 粉丝2
  • 关注2
  • 发帖数339
  • 社区居民
  • 忠实会员
  • 原创写手
阅读:5450回复:0

CodeIgniter框架的简易使用

楼主#
更多 发布于:2013-07-03 08:47
分享到:
CodeIgniter是一个小巧但功能强大的 PHP 框架官网地址
在官网可以下载该框架。

 

下面来说明一下CodeIgniter中的简单操作。
一、Controller的创建与设置
 

1.在Controller目录下创建blog.php文件:

2.blog.php中的代码如下:


[php] view plaincopy
  1. <?php  
  2.  
  3. class Blog extends CI_Controller {  
  4.    function index(){  
  5.        echo 'Hello World!';  
  6.    }  
  7. }  
  8.  
  9. ?>  

 3.输入地址。注意:不要加后缀。浏览页面:

这里显示的其实是index函数中的数据,因为默认会调用index方法。
我们不妨将代码做如下修改:


[php] view plaincopy
  1. <?php  
  2.  
  3. class Blog extends CI_Controller {  
  4.    function index(){  
  5.        echo 'Hello World!';  
  6.    }  
  7.    function hello(){  
  8.        echo 'Hello WHY!';  
  9.    }  
  10. }  
  11.  
  12. ?>  

 然后将访问路径也修改一下,就会发现其实输入或者不输入/index都是访问的index方法,但是如果输入其他值就会访问其他的function的内容:


 在CodeIgniter中,很多设置都已经配置好了,我们可以直接修改。

比如修改默认的访问页面,在applications/config中有一个route.php:


[php] view plaincopy
  1. $route['default_controller'] = "welcome";  
  2. $route['404_override'] = '';  

 将其中的default_controller改成blog,再在任务栏中输入index.php就会发现输出的是HelloWorld,也就是访问了blog.php页面



二、View的创建与设置
1.在views目录下新建文件blog_view.php:

2.返回到controller文件夹下的blog.php,将简单的echo改为加载blog_view页面,实现其controller的真正价值



[php] view plaincopy
  1. <?php  
  2.  
  3. class Blog extends CI_Controller {  
  4.    function index(){  
  5.        $this->load->view('blog_view');  
  6.    }  
  7. }  
  8.  
  9. ?>  

 3.在页面中输入网址进行访问,发现页面已经发生了变化:


、Controller与View之间的数据传输
1.将Controller中的代码作如下修改:



[php] view plaincopy
  1. <?php  
  2.  
  3. class Blog extends CI_Controller {  
  4.    function index(){  
  5.        $data['myName']="WHY";  
  6.        $data['head']="'s Blog !";  
  7.  
  8.        $this->load->view('blog_view',$data);  
  9.    }  
  10. }  
  11.  
  12. ?>  

 
 
 2.将View中的代码作如下修改,注意,不是使用data数组,而是直接的$调用数据:



[php] view plaincopy
  1. <html>  
  2. <head>  
  3. <title><?php echo $myName.$head?></title>  
  4. </head>  
  5. <body>  
  6. <h1>I am <?php echo $myName ?></h1>  
  7.  
  8. </body>  
  9. </html>  

 3.浏览网站:


 
PS:在CodeIgniter 中<?php echo $myName ?>等价于<?=$myName ?>

 

下面来使用php输出一个数组。
1.在Controller中作如下修改添加一个数组:



[php] view plaincopy
  1. <?php  
  2.  
  3. class Blog extends CI_Controller {  
  4.    function index(){  
  5.        $data['myName']="WHY";  
  6.        $data['head']="'s Blog !";  
  7.        $data['todo']=array('eat','sleep','call');  
  8.  
  9.        $this->load->view('blog_view',$data);  
  10.    }  
  11. }  
  12.  
  13. ?>  
2.在View中作如下修改显示数组:



[php] view plaincopy
  1. <html>  
  2. <head>  
  3. <title><?php echo $myName.$head?></title>  
  4. </head>  
  5. <body>  
  6. <h1>I am <?php echo $myName ?></h1>  
  7.  
  8. <ol>  
  9. <?php foreach($todo as $item): ?>  
  10. <li><?=$item?></li>  
  11. <?php endforeach; ?>  
  12. </ol>  
  13.  
  14.  
  15. </body>  
  16. </html>  

 3.刷新页面,已经可以正常显示了:

如果不习惯endforeach,也可以使用标准的PHP语言:



[php] view plaincopy
  1. <html>  
  2. <head>  
  3. <title><?php echo $myName.$head?></title>  
  4. </head>  
  5. <body>  
  6. <h1>I am <?php echo $myName ?></h1>  
  7.  
  8. <ol>  
  9. <?php foreach($todo as $item){ ?>  
  10. <li><?= $item?></li>  
  11. <?php } ?>  
  12. </ol>  
  13.  
  14. </body>  
  15. </html>  

 当然,也可以重写构造方法:



[php] view plaincopy
  1. <?php  
  2.  
  3. class Blog extends CI_Controller {  
  4.    function __construct()  
  5.    {  
  6.        parent::__construct();  
  7.     }    
  8.  
  9.    function index(){  
  10.        $data['myName']="WHY";  
  11.        $data['head']="'s Blog !";  
  12.        $data['todo']=array('eat','sleep','call');  
  13.        $this->load->view('blog_view',$data);  
  14.    }  
  15. }  
  16.  
  17. ?>  
游客

返回顶部