thinkPHP控制器变量在模板中的显示方法示例

本文实例讲述了thinkPHP控制器变量在模板中的显示方法。分享给大家供大家参考,具体如下:

控制器中变量

public function register() {
  $type = I("param.type");//1.学生注册 2.教师注册 3.其他注册
  $this -> assign("type", $type);
    //q全部部门
  $depart1 = M("Depart") -> where("status=1 and fid=0") -> order("id asc") -> select();
  $this -> assign("depart1", $depart1);
  $this -> display();
}

模板中引用位置一:php代码中,直接用$i;

<php>
  echo $i;
</php

模板中引用位置二:模板中直接应用{$i}或者 class="{$unlogined}"

<font color="red">注意:1.非相关人员,严禁注册。{$i}</font><br>
<php>
  $logined = is_array($_SESSION['userInfo']) ? "" : "hide-div";
  $unlogined = $logined == "hide-div" ? "" : "hide-div";
</php>
<div id="unlogined-div" class="{$unlogined}">

模板中引用位置三:模板标签中用,如condition中用,不加{}。

<if condition="$type neq 4">
  <div class="form-group">
    <label for="" class="control-label col-sm-3">一级部门: <span class="text-danger">*</span></label>
    <div class="col-sm-9">
      <select name="depart1_id" id="depart1_id" onchange="depart1change()" class="form-control input-sm">
        <option value="-1">-----请选择一级部门-----</option>
        <foreach name="depart1" item="vo">
          <option value="{$vo.id}">{$vo.name}</option>
        </foreach>
      </select>
    </div>
  </div>
  <div class="form-group">
    <label for="" class="control-label col-sm-3">二级部门: <span class="text-danger">*</span></label>
    <div class="col-sm-9">
      <select name="depart2_id" id="depart2_id" onchange="depart2change()" class="form-control input-sm">
        <option selected='selected'>-----请先选择一级部门-----</option>
      </select>
    </div>
  </div>
  <div class="form-group">
    <label for="" class="control-label col-sm-3">三级部门: <span class="text-danger">*</span></label>
    <div class="col-sm-9">
      <select name="depart3_id" id="depart3_id" class="form-control input-sm">
        <option selected='selected'>-----请先选择二级部门-----</option>
      </select>
    </div>
  </div>
</if>

更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

(0)

相关推荐

  • thinkPHP通用控制器实现方法示例

    本文实例讲述了thinkPHP通用控制器实现方法.分享给大家供大家参考,具体如下: <?php namespace 目录\Controller; class TypeController extends Controller { public function add() { if(IS_POST) { $model = D('Type'); if($model->create()) { if($model->add()) { $this->success('添加成功!', U('

  • thinkphp3.2实现跨控制器调用其他模块的方法

    本文实例讲述了thinkphp3.2实现跨控制器调用其他模块的方法.分享给大家供大家参考,具体如下: thinphp中前台后台都有互相调用方法,这样可以省去重复内容. $hello = new \Admin\Common\Fun\hello(); $hello->hehe(); 调用其他地方的方法同理. 如果是在同控制器里模块名可以省略. 如调用common里面的某个类的方法: $hello = new \Common\Fun\hello(); $hello->hehe(); 框架里面提供了跨

  • TP(thinkPHP)框架多层控制器和多级控制器的使用示例

    本文实例讲述了TP(thinkPHP)框架多层控制器和多级控制器的使用.分享给大家供大家参考,具体如下: 多层控制器的目录结构是这样的: ├─Controller 访问控制器 │  ├─UserController.class.php │  ├─BlogController.class.php │  ... ├─Event 事件控制器 │  ├─UserEvent.class.php │  ├─BlogEvent.class.php │  ... 给App应用添加多层控制器,不需添加任何参数,只

  • ThinkPHP3.2.2的插件控制器功能

    3.2.2版本开始支持插件控制器的调用,可以通过更加方便的URL地址访问到模块中某个插件定义的控制器. 当URL中传入插件控制器变量的时候,会自动定位到插件控制器中的操作方法. 插件控制器的变量由参数 VAR_ADDON 进行设置,默认为addon,例如我们在URL中传入: 复制代码 代码如下: http://serverName/Home/info/index/addon/SystemInfo 由于传入了addon参数,因此这里的User控制器并非原来的 复制代码 代码如下: Home/Con

  • Thinkphp 空操作、空控制器、命名空间(详解)

    1.空操作 空操作是指系统在找不到请求的操作方法的时候,会定位到空操作(_empty)方法来执行,利用这个机制,我们可以实现错误页面和一些URL的优化. http://网址/index.php/Home/Main/login http://网址/index.php/Home/Main/hello 空操作 出现页面: 显示的错误信息过于详细,为安全以及优化页面起见,实行空操作 1.做一个_empty()方法.要在子类里面写,不要再父类里(推荐使用) function _empty() { echo

  • ThinkPHP中URL路径访问与模块控制器之间的关系

    ThinkPHP中URL路径访问与模块控制器之间的关系是ThinkPHP程序开发中非常重要的一个环节.熟练的掌握该技巧对于进一步学习ThinkPHP起着至关重要的作用.具体分析如下: 打开控制器页面: UserAction.class.php  //路径:admin\Lib\Action\   此处的admin为新建的项目对应的目录 我们都知道在Action里的方法默认为Public属性,私有属性的方法没法访问,但定义私有属性的方法也有其意义所在. 在其中定义私有方法的意义:主要体现在,能够在这

  • thinkphp3.2实现上传图片的控制器方法

    本文讲述了thinkphp3.2实现上传图片的控制器方法.分享给大家供大家参考,具体如下: public function file() { $baseUrl = str_replace('\\', '/', dirname($_SERVER['SCRIPT_NAME'])); import('ORG.Net.UploadFile'); import('ORG.Util.Services_JSON'); $upload = new UploadFile(); $upload->maxSize =

  • ThinkPHP控制器间实现相互调用的方法

    本文实例讲述了ThinkPHP控制器间实现相互调用的方法.分享给大家供大家参考.具体实现方法如下: ThinkPHP同一个项目里,两个控制器的方法如何相互调用呢?ThinkPHP提供了一个A(),通过它可以使控制器之间的方法相互调用,使得代码可以重复利用. 官方似乎对A()方法没有相关使用文档,现在通过一个例子来说一下如使用A()方法. 有两个控制器,ColumnsAction和NewsAction.ncatlist()是ColumnsAction的分类列表方法,现在我要在控制器NewsActi

  • ThinkPHP5.0框架控制器继承基类和自定义类示例

    本文实例讲述了ThinkPHP5.0框架控制器继承基类和自定义类.分享给大家供大家参考,具体如下: 继承系统控制器基类: <?php namespace app\index\controller; use think\Controller; class Index extends Controller { public function hello() { return 'hello,world'; } } 或者自定义一个基础控制器类Base: <?php namespace app\inde

  • thinkphp控制器调度使用示例

    1.如何通过地址栏参数来得到模块名称和控制器名称(即使在有路由和开了重写模块的情况下) 2.tp是如何实现前置,后置方法功能模块,和如何执行带参数的方法? php系统自带的 ReflectionClass,ReflectionMethod 类,可以反射用户自定义类的中属性,方法的权限和参数等信息,通过这些信息可以准确的控制方法的执行 ReflectionClass主要用的方法:  hasMethod(string)  是否存在某个方法getMethod(string)   获取方法 Reflec

随机推荐