zoukankan      html  css  js  c++  java
  • Codeigniter夸应用调用model

    Thinkphp里面的model都是可以跨应用调用,ci本身没有实现这个方法。
    可是稍微修改下,比Thinkphp用起来更容易调用。
    找到Loader.php文件的地址/system/core/Loader.php
    找到后打开文件,找到这个类的初始化方法,大概在124行的位置开始。

    public function __construct()
        {
            $this->_ci_ob_level  = ob_get_level();
            $this->_ci_library_paths = array(APPPATH, BASEPATH);
            $this->_ci_helper_paths = array(APPPATH, BASEPATH);
            $this->_ci_model_paths = array(APPPATH);
            $this->_ci_view_paths = array(APPPATH.'views/'   => TRUE);
     
            log_message('debug', "Loader Class Initialized");
        }

    只需要修改几行代码就可以实现了。

    public function __construct()
    {
        $this->_ci_ob_level  = ob_get_level();
        $this->_ci_library_paths = array(APPPATH, BASEPATH);
        $this->_ci_helper_paths = array(APPPATH, BASEPATH);
     
        $paths = array('weixin/', 'application/');
        $paths = array_merge(array(APPPATH,), $paths);
        $paths = array_unique($paths);
        $this->_ci_model_paths = $paths;
     
        $this->_ci_view_paths = array(APPPATH.'views/'   => TRUE);
     
        log_message('debug', "Loader Class Initialized");
     
     
    }

    将几个应用的目录名写在$paths这个数组里面。
    最后$paths这个数组复制给_ci_model_paths这个成员变量就行了。
    ci在加载model的时候会循环这个数组下面的models文件,如果找到文件就会自动跳出
    这里稍微做了一下处理,以当前的调用文件的目录优先查找.

  • 相关阅读:
    Scratch-Blockly配置过程
    Scratch www 系统搭建
    Scratch3.0——项目层次结构
    用canvas播放scratch文件
    Scratch3.0——克隆代码仓库的正确姿势
    Scratch3.0——作品截图
    Scratch GUI
    Ubuntu下Visual Studio Code的配置
    关于Ubuntu16.04下phpmyadmin出现mbstring错误的正解
    ubuntu搭建LAMP全教程及简单使用
  • 原文地址:https://www.cnblogs.com/hubing/p/4047961.html
Copyright © 2011-2022 走看看