CodeIgniter配置之autoload.php自动加载用法分析

本文实例分析了CodeIgniter配置之autoload.php自动加载用法。分享给大家供大家参考,具体如下:

CodeIgniter带了自动加载的功能,可以全局加载类库、模型、配置、语言包等,对于需要全局使用的功能相当方便。

例如:有个全局函数写在app_helper.php中,需要全局加载这个函数,只需设置autoload.php:

代码如下:

$autoload['helper'] = array('app');

接下来,所有的地方都可以使用了,配置、模型等配置相似。但方便的同时也需要考虑下该种加载方式有何弊端。

如果一个项目中分了两块,如前台、后台,那这个功能是否为前后台都必须? 如果前后台还有不同的业务模块区分, 是否是每个模块都要用到?

如果都需要, 那写在这里就很好, 如果不需要, 就不建议写在这里。

对于相关的类库、函数调用应该按需加载

实现加载的方式有很多,可以在指定的页面load, 可以在公用的控制器、函数里面load, 一经load即可全局使用。个人的常用做法是忽略该文件,手动加载全局函数等。

说到这里,顺便说下CI的加载机制。下面为类库、函数等的加载方式:

$this->load->library('session');
$this->load->model('hello_model');
$this->load->helper(array('url', 'array'));
$this->load->language(array('user_menu', 'user_tips'));

加载方式统一,使用起来比较简单,但load类库时传参有点不方便。再次load类库时不会再去加载,而是从保存好的静态数组中拿出来,需要注意下成员属性的状态,防止因为值还存在而导致程序异常。

更多关于CodeIgniter相关内容感兴趣的读者可查看本站专题:《codeigniter入门教程》和《CI(CodeIgniter)框架进阶教程》

希望本文所述对大家基于CodeIgniter框架的PHP程序设计有所帮助。

(0)

相关推荐

  • CodeIgniter视图使用注意事项

    本文讲述了CodeIgniter视图使用注意事项.分享给大家供大家参考,具体如下: CI中视图即application/views/下的模版文件,模版中支持直接使用PHP,所以模版的实现没有太多好说的,说几点视图的注意事项: 1.CI的视图可以在控制器中load多个视图,页面最后将这些内容组合起来后输出.这里load的动作如果交给控制器去做,需要调整模版结构时就需要调整控制器,这不太好.可以在控制器中进行封装或者直接交给视图去做,保证每个ACTION都只load一个视图文件. 2.让视图做它擅长

  • CI框架中类的自动加载问题分析

    本文实例讲述了CI框架中类的自动加载问题.分享给大家供大家参考,具体如下: application/config 配置文件中添加: | 1. Packages | 2. Libraries | 3. Helper files | 4. Custom config files | 5. Language files | 6. Models 1. 第三方库文件加载 // $autoload['packages'] = array(APPPATH.'third_party', '/usr/local/

  • CI框架自动加载session出现报错的解决办法

    很多程序员在CI中使用session的时候,开启自动加载session之后网站就报错了,具体错误信息如下:In order to use the Session class you are required to set an encryption key 下面一起来看问题解决办法. 提示信息说明:如果想用session类的话就必须要设置一个加密的密钥!那就给设置一个吧,毕竟也是出于安全考虑. 打开application/config/config.php找到Encryption Key 复制代

  • CI(CodeIgniter)框架视图中加载视图的方法

    本文实例讲述了CI(CodeIgniter)框架视图中加载视图的方法.分享给大家供大家参考,具体如下: CI做为php的一个轻量级框架,其自身具备很多优点,在此我重点想说的是视图中加载视图. 1:在Application\config\database.php文件中设置好CodeIgniter 数据库变量之后,紧接着在Application\config\config.php文件中设置基础 URL.例如我的基础 URL 是:http://localhost/codeigniter/ 2:接下来创

  • CodeIgniter实现更改view文件夹路径的方法

    控制view文件夹路径的代码:system/core/loader.php public function add_package_path($path, $view_cascade=TRUE) { $path = rtrim($path, '/').'/'; array_unshift($this->_ci_library_paths, $path); array_unshift($this->_ci_model_paths, $path); array_unshift($this->

  • CI映射(加载)数据到view层的方法

    本文实例讲述了CI映射(加载)数据到view层的方法.分享给大家供大家参考,具体如下: CI有个恶心的东西,就是需要把所有的数据都要放到$data数组中才能映射到view层,如: 当前我从数据库的link表(友情链接表,字段:id  name   url),搜索出来的数据方式: $query = $this->db->query("select id,name,url from cg_link where 1"); $links = $query->result();

  • php ci框架中加载css和js文件失败的解决方法

    在将html页面整合到ci框架里面的时候,加载css和js失败,弄了半天发现ci框架是入口的框架,对框架中文件的所有请求都需要经过index.php处理完成,当加载外部的css和js文件的时候要使用base_url()函数处理外部的链接. 比如: 在config配置文件中的base_url为:" localhost:8080/项目名称/ " 在控制器中访问application/resource/aaa.js文件 相对路径<script src= "resource/a

  • codeigniter中view通过循环显示数组数据的方法

    本文实例讲述了codeigniter中view通过循环显示数组数据的方法.分享给大家供大家参考.具体如下: controller如下: <?php class SimpleController extends Controller { function index() { $data['my_list'] = array("do this", "clean up", "do that"); $this->load->view('

  • codeigniter中实现一次性加载多个view的方法

    本文实例讲述了codeigniter中实现一次性加载多个view的方法.分享给大家供大家参考.具体如下: function somecontrollerfunction() { $data['pagetitle'] = "Welcome to jb51.net"; $this->load->view('pageheader', $data); $this->load->view('pagenav'); $this->load->view('pagec

  • CI框架给视图添加动态数据

    数据通过控制器以一个数组或是对象的形式传入视图 , 这个数组或对象作为视图载入函数的第二个参数如果你使用一个对象,那么类变量将转换为数组元素.好了,让我们用你的控制器试试.打开控制器并添加以下代码 <?php class Blog extends CI_Controller {    function index()  {   $data['title'] = "My Real Title";   $data['heading'] = "My Real Heading&

随机推荐