• ThinkPHP开发笔记-前后端数据交互


    此处就是 Controller 和 View 相互传数据。

    1、Controller 向 View 的页面传数据。在控制器中把变量传递给模板,使用 assign 方法对模板变量赋值。例如:

    在Controller中:

    $array['name']    =    'thinkphp';
    $array['email']   =    'liu21st@gmail.com';
    $array['phone']   =    '12335678';
    $this->assign($array);

    在View文件中输出:

    <?php echo $name.'['.$email.''.$phone.']';?>

    2、View 页面跳转或提交到某个 Controller 时传数据。获取用户提交的数据可通过 Action 参数绑定,或者 I 方法。

    (1)Action 参数绑定是把URL中的参数和对应Controller对应方法中的参数进行绑定。如:

    URL为:http://serverName/index.php/Home/Blog/archive/year/2013/month/11

    Blog控制器的archive方法:

    public function archive($year='2013',$month='01'){
        echo 'year='.$year.'&month='.$month;
    }

    (2)I方法不仅可以获取用户提交的数据,也可以获取系统变量,这个应该是最常用的。

    以GET变量类型为例,说明下I方法的使用:

    echo I('get.id'); // 相当于 $_GET['id']
    echo I('get.name'); // 相当于 $_GET['name']

    用同样的方式,我们可以获取post或者其他输入类型的变量,例如:

    I('post.name','','htmlspecialchars'); // 采用htmlspecialchars方法对$_POST['name'] 进行过滤,如果不存在则返回空字符串
    I('session.user_id',0); // 获取$_SESSION['user_id'] 如果不存在则默认为0
    I('cookie.'); // 获取整个 $_COOKIE 数组
    I('server.REQUEST_METHOD'); // 获取 $_SERVER['REQUEST_METHOD'] 
  • 相关阅读:
    php知识点
    CommonsChunkPlugin知识点
    待学习
    svn知识点
    es6知识点
    webpack2新特性
    排序算法
    交流措辞
    js继承
    多行编辑软件
  • 原文地址:https://www.cnblogs.com/NaughtyBaby/p/4546590.html
Copyright © 2020-2023  润新知