获取系统常量信息

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

var_dump(get_defined_constants());

<?php
namespace Admin\Controller;
use Think\Controller;
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框架里有一个初始命名空间 (相当于根目录)

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

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

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

1.TP核心类里面的根

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

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

2.APP里面的根

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

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

APP里面的模块名就是根

例子:

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

例子:

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

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

\Think\DBDA.class.php

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

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

例子:

分析这句代码

$n = new \Admin\model\NationModel();

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

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

这个ThinlPHP框架挺神奇的

ThinkPHP框架 3.2.2 获取系统常量信息 连接数据库 命名空间的理解的更多相关文章

  1. ThinPHP命名空间,连接数据库是要修改的配置文件,Model数据模型层,跨控制器调用,如何获取系统常量信息,

    一.命名空间(主要是为了实现自动加载类) *命名空间(相当于虚拟的目录),为了让类有一个统一的文件夹来管理(可以自动加载'类'),每个文件都要有命名空间*tp如何做命名空间:*TP框架下有一个初始命名 ...

  2. 2016/05/10 thinkphp 3.2.2 ①系统常量信息 ②跨控制器调用 ③连接数据库配置及Model数据模型层 ④数据查询

    [系统常量信息] 获取系统常量信息: 如果加参数true,会分组显示: 显示如下: [跨控制器调用] 一个控制器在执行的时候,可以实例化另外一个控制,并通过对象访问其指定方法. 跨控制器调用可以节省我 ...

  3. TP系统常量信息

    [系统常量信息] 获取系统常量信息: 如果加参数true,会分组显示: 显示如下: [跨控制器调用] 一个控制器在执行的时候,可以实例化另外一个控制,并通过对象访问其指定方法. 跨控制器调用可以节省我 ...

  4. Linux sysinfo获取系统相关信息

    Linux中,可以用sysinfo来获取系统相关信息. #include <stdio.h> #include <stdlib.h> #include <errno.h& ...

  5. android 获取系统硬件信息

    一,首先设置权限访问: <uses-permission android:name="android.permission.READ_PHONE_STATE" />  ...

  6. 获取系统相关信息 (CPU使用率 内存使用率 系统磁盘大小)

    引言 在软件开个过程中,对于软件的稳定性和使用率也是我们需要关注的 .  使用sigar来监控,简单方便!  使用说明:下载sigar jar及配合sigar的dll文件来用,需要将dll文件放到JD ...

  7. thinkphp 的 Action 控制器中的系统常量总结

    THINK_PATH // ThinkPHP系统目录 APP_PATH // 当前项目目录 APP_NAME // 当前项目名称 CONTROLLER_NAME // 当前控制器名称 MODULE_N ...

  8. 通过java的Runtime.getRuntime()和System.getProperties()来获取系统的信息

    第一种,通过Runtime.getRuntime()来获取系统信息. 通过java来获取系统以下的信息: 主机名: OS 名称:         OS 版本: OS 制造商: OS 配置: 独立工作站 ...

  9. Revit二次开发-根据Element获取系统族信息

    Element element = doc.getElement(elementId); Autodesk.Revit.DB.Parameter familyType = element.get_Pa ...

随机推荐

  1. .NET 用 Unity 依赖注入——概述注册和解析类型(1)

    本文内容 Unity 概述 环境 一个真实的例子 类型注册(Type Registrations) 解析类型(Resolving Types) 跳槽,新公司使用了 Unity,初步看了一下,公司的使用 ...

  2. 访问 Google

    对于一个技术人员访问Google是何其的重要呀? 一下收集了一些访问的连接,不愿意使用VPS的同学可以使用下: 非原版: Glgoo:http://www.glgoo.com/九尾搜索:http:// ...

  3. 抓取epsg.io的内容

    简述 epsg.io是一个查询EPSG坐标系相关信息的好网站,内容很全.有各种格式的定义可以直接下载,也有坐标系的范围名称等相关信息,所以想抓取这些信息下来,方便对接各个系统. epsg.io本身是开 ...

  4. java.util.WeakHashMap

    http://mikewang.blog.51cto.com/3826268/880775 http://mzlly999.iteye.com/blog/1126049 java.util.WeakH ...

  5. Python 隔离沙箱 virtualenv

    我认为Python一个很大的优势就是官方网站给出的众多的软件包,几乎能帮助你实现你想要的任何功能,避免了重复开发的劳动,但是零零碎碎的包,以及每个包的各种各样的版本管理就成为了一个比较棘手的问题,因此 ...

  6. 你被R语言的=和<-搞昏了头吗

    学习R有一周了,心中一直有一个困惑,关于= 和 <-,今晚决定搞定它! 迄今为止用到最多的函数是matrix() 和c(),就用他们说起!   之前学了四五门语言,对于=赋值已经成了惯性,下面是 ...

  7. Win10 设置窗口背景色

    Win10 的窗口背景色不能像Win7那样通过修改Windows的"窗口"配置来生效,只能是通过修改注册表的信息来修改Win10的窗口色. 1. 通过注册表来修改默认的窗口背景色( ...

  8. SNF快速开发平台MVC-甘特图

    上个月做了CS框架的甘特图样例,本月框架组人员又实现了BS的甘特图效果,而且效果也很不错哦 图形框可以直接拖拽调整时长时间: 新增节点:

  9. Selenium:注解@FindBy、@FindBys、@FindAll的用法

    方式有3种:@FindBy.@FindBys.@FindAll.下文对3中类型的区别和使用场景进行介绍 1)@FindBy @FindBy(id= "A") private Web ...

  10. 译: 1. RabbitMQ Spring AMQP 之 Hello World

    本文是译文,原文请访问:http://www.rabbitmq.com/tutorials/tutorial-one-spring-amqp.html RabbitMQ 是一个Brocker (消息队 ...