zoukankan      html  css  js  c++  java
  • ThinkPHP框架 3.2.2 获取系统常量信息 连接数据库 命名空间的理解

    获取系统常量信息

    随便一个方法里加上这句话都能获取到系统常量信息!!

      var_dump(get_defined_constants());  

     

     

     

     

    <?php
    namespace AdminController;
    use ThinkController;
    class DengLuController extends Controller {
        public function test(){
            //$this->show();
            //echo "hello";
            //获取系统常量信息
            //var_dump(get_defined_constants(true));
            
            //方法一
            //造对象调用
            $m = new MainController();//调那个控制器名
            $m->test_diao();//调他里面的方法
            
            //方法二
            //快捷函数 A
            //$m = A("Main");
            //$m->test_diao();
            
            //使用快捷函数 A 调另一个表里的方法
            //$m = A("文件名/控制器);
            //$m->那个控制器里的方法();
            $m = A("Home/Index");
            $m->testt();
            
            
            //方法三
            //快捷方法 R
            //R("文件夹名/控制器/里的方法");
            R("Home/Index/testt");

          //U方法
         //U方法可以在任何一个地方任何一个方法里生成路径显示出来 !

         echo U();
     
            
        }
        
        
        public function _empty(){
            $this->display("Empty/empty");
            //echo "你输入的这个控制器里没有这个方法!!";
        }
    }

     

     

     

     

     

     

    使用ThinkPHP框架链接数据库

    将Thinkphp框架默认的ThinkPHP文件夹下Conf文件夹下里的convention.php文件不要在这里面修改

     将下面这些链接数据库里的代码复制到自己自定义的模板下里的Conf文件夹下的config.php文件里修改填写!

    <?php
    return array(
        //'配置项'=>'配置值'
        'SHOW_PAGE_TRACE'=>true,   //显示trace信息
         /* 数据库设置 */
        'DB_TYPE'               =>  'myspl',     // 数据库类型
        'DB_HOST'               =>  'localhost', // 服务器地址
        'DB_NAME'               =>  'text1',          // 数据库名
        'DB_USER'               =>  'root',      // 用户名
        'DB_PWD'                =>  '*****',          // 密码
        'DB_PORT'               =>  '3306',        // 端口
        'DB_PREFIX'             =>  '',    // 数据库表前缀
        'DB_PARAMS'              =>  array(), // 数据库连接参数    
        'DB_DEBUG'              =>  TRUE, // 数据库调试模式 开启后可以记录SQL日志
        'DB_FIELDS_CACHE'       =>  false,        // 启用字段缓存true(开启)  false(不开启)
        'DB_CHARSET'            =>  'utf8',      // 数据库编码默认采用utf8
        'DB_DEPLOY_TYPE'        =>  0, // 数据库部署方式:0 集中式(单一服务器),1 分布式(主从服务器)
        'DB_RW_SEPARATE'        =>  false,       // 数据库读写是否分离 主从式有效
        'DB_MASTER_NUM'         =>  1, // 读写分离后 主服务器数量
        'DB_SLAVE_NO'           =>  '', // 指定从服务器序号
        
    );

     

    调用数据库里的表!

    public function ShuJu(){
            //使用 D 方法访问数据库
            $n = D("login");
            var_dump($n);
    //使用 M 方法访问数据库 $n = M("login"); var_dump($n); }

     

    关于命名空间的说法和理解!!

    命名空间相当于一个虚拟的目录

    在tp框架里面主要为了实现自动加载类!

    在TP框架里有一个初始命名空间 (相当于根目录)

    其对应的初始命名空间目录就是系统的类库目录:ThinkphpLibrary

    在ThinkphpLibrary文件夹目录里,初始命名空间下又包含很多根命名空间

    这些根命名空间主要分两类:、

    1.TP核心类里面的根

      在Linbrary文件夹里所有的文件夹都是根  

      自己在里面创建一个文件夹也是根

     

    2.APP里面的根

       APP里面的根是以模块名命名的

       在自定义的应用空间里它的根就是模块名

     

     

    APP里面的模块名就是根

    例子:

     

     

    在写命名空间的时候,从根开始写,从Think开始写

    例子:

     

     

     

    如果想导入自己封装的一个类文件  比如DBDA.class.php,

    我需要用到use 从系统的根命名空间Think 找到DBDA.class.php

    ThinkDBDA.class.php

    这个反斜杠代表的是初始命名空间      (就相等于我们目录里面的根一样)

    从初始命名空间找到命名空间Think然后找到DBDA.class.php

     

    例子:

    分析这句代码

     $n = new AdminmodelNationModel(); 

    从 反斜杠初始命名空间开始写在写上Admin命名空间文件夹 下的model文件夹里的Nationmodel();这个类!

    相当于用根路径来找到这个文件位置

     

    这个ThinlPHP框架挺神奇的

     

  • 相关阅读:
    LeetCode算法训练
    重新整理自己的博客
    VS2019制作安装包与ClickOnce部署
    2020年系统架构设计师考试通过总结
    合并两个有序数组为一个新的有序数组
    Inno Setup 出现 the drive or unc share you selected does not exist or is not accessible 解决记录
    60秒定位问题,十倍程序员的Debug日常
    这几个神秘参数,教你TDengine集群的正确使用方式
    存储成本仅为OpenTSDB的1/10,TDengine的最大杀手锏是什么?
    基于TDengine进行睿信物联网平台的迁移改造
  • 原文地址:https://www.cnblogs.com/zc290987034/p/6204206.html
Copyright © 2011-2022 走看看