zoukankan      html  css  js  c++  java
  • thinkPHP 全局函数

    M函数

    TPModel父类,封装的功能比较多,增删改查操作都具备.
    一些表,比如留言表,comment

    class CommentModel extends Model {
    }

    M('comment') 的作用就是得到父类Model的对象,
    且把Model的表名---指向-->comment

     

    D函数

    D函数也可以实例化Model,

    优先实例自定义的子类Model,
    如果子类Model不存在,则功能等同于M()的函数.
    如果有自定义的类,也可以用D()来导入

    例如

            $a = new HomeModelDemoModel();
            $a = D('Demo');//thinkphp 封装的方法(优先得到子类的方法)
        //两者的效果是一样的

    D函数跨模块调用Model

    如::Admin模块下,调用 Home模块下的DemoModel

    //跨模块调用,Admin/controller/indexcontroller.class.php下

    $DemoModel = D('Home/Demo'); //home下面的Demo模块 $a = $DemoModel->papa();

    调用Home模块下DemoModel.class.php模块

    <?php
        namespace HomeModel;
        use ThinkModel;
    
        class DemoModel extends Model {
            public function papa(){
                //echo 'Model';
                $arr = array('id'=>'123','name'=>'healy','age'=>'99','sex'=>'girl');
                $a = $this->add($arr);
    
                return $a;
            }
        }
    
    ?>

    U函数

    U函数 按系统设定的URL规则,生成URL

    在控制器中,可以这样来写:
    $url = U('模块/控制器/方法',参数数组或字符串);


    //大U函数的应用生成URL
        public function uu(){
            //$a = U('Home/User/ff',array('id'=>7));
            $a = U('Home/User/ff',"id=4&p=3");
            echo $a;
        }

    效果图

    在模板中的写法

    注意: 在模板中调用时,标签中加":"

    <!--模板里面使用-->
        {:U('Home/User/ff',array('id'=>3))}

    C函数

    读取和设置配置选项的函数

     配置文件

    <?php
    
    return array(
        //'配置项'=>'配置值'
         'DB_TYPE'               =>  'mysql',     // 数据库类型
        'DB_HOST'               =>  'localhost', // 服务器地址
        'DB_NAME'               =>  'test',          // 数据库名
        'DB_USER'               =>  'root',      // 用户名
        'DB_PWD'                =>  '',          // 密码
    
        //随便写的
        'WEB_NAME'                   =>  'blog',
    );

    读取配置文件

    //读取配置项C函数的用法
        echo C('DB_NAME');
         C('WEB_NAME','xiugai');
            echo C('WEB_NAME');//运行时的修改,不改原来配置文件
        exit();

    效果

    I函数

    防止XSS攻击和sql注入,所做的过滤函数.

    I('get.title') --输出--> <div> // 防止XSS攻击
    I('post.email') --输出-- 转义并过滤html标签后的email内容.

    get请求

    //I函数的用法
    //传统的用法 //$get=$_GET['id']; //echo $get;
    $get = I('id'); echo $get;
    //两者的效果是一样的

    POST请求

    home下的模板add.html

    <form class="" action="{:U('Home/User/ff')}" method="post">
            <input type="text" name="id" value="">
            <input type = "submit" name="" value = "submit">    
        </form>
    <!--
    {:U('Home/User/ff')}===>      action/shop/index.php/Home/User/ff.html
    
    -->

    home下的控制器UserController.class.php

        $get = I('id');
            echo $get;
            exit();

    测试POST请求成功!

  • 相关阅读:
    LeetCode
    LeetCode
    ELK系列(5)
    ELK系列(4)
    ELK系列(3)
    ELK系列(2)
    ELK系列(1)
    计算机网络常见面试题总结
    mosquitto启动时Address already in use 和 一般的 Address already in use
    size和STL中的size_type
  • 原文地址:https://www.cnblogs.com/healy/p/6807691.html
Copyright © 2011-2022 走看看