ThinkPHP写第一个模块应用
找到项目文件夹下面的Lib/Action这个目录,在下面有个创建好的例子IndexAction.class.php,加入我们创建的是admin这个项目,那么./admin/Lib/Action/IndexAction.class.php,这个模块是默认加载的模块。在ThinkPHP中,自动加载的动作、方法、操作等等都是以index命名的。
下面,我们创建一个自己的模块,比如UserAction,class.php(注意命名规则),我们编辑这个文件:
代码如下:
<?php
//先继承Action这个类,注意:文件名要与类名保持一致
class UserAction extends Action
{
//每个模块中默认加载的动作(操作、方法)是index方法
function index ()
{
echo '你来到了user模块';
}
//方法(操作、动作)命名规则是:第一个单词小写紧跟着的首字母大写
function listName()
{
echo '你的名字是'.$_GET['name'];
}
}
?>
接下来在浏览器测试:
输入:http://thinkphp.com/admin.php?m=user,输出:你来到了user模块
输入:http://thinkphp.com/admin.php?m=user&a=index,输出:你来到了user模块
输入:http://thinkphp.com/admin.php?m=user&a=listname,输出:你的名字是
输入:http://thinkphp.com/admin.php?m=user&a=listname&name=123,输出:你的名字是123
相关推荐
-
ThinkPHP应用模式扩展详解
ThinkPHP的应用模式使得开发人员对核心框架进行改造较以往更为得心应手,并且可以让你的应用适应更多的环境和不同的需求.每个应用模式都有自己的模式定义文件,相对于ThinkPHP3.1版本,ThinkPHP3.2版本对应用模式的扩展更加明确和清晰,在ThinkPHP3.1版本中定义了Cli.Lite.Thin.AMF.PHPRPC.REST模式,其定义方式和ThinkPHP3.2版本的方式大同小异,如有需要可以参考修改,其中Cli模式被ThinkPHP框架内置,不用单独定义Cli模式即可正常使
-
thinkPHP5.0框架URL访问方法详解
本文实例讲述了thinkPHP5.0框架URL访问方法.分享给大家供大家参考,具体如下: URL设计 ThinkPHP5.0在没有启用路由的情况下典型的URL访问规则是: http://serverName/index.php(或者其它应用入口文件)/模块/控制器/操作/[参数名/参数值...] 支持切换到命令行访问,如果切换到命令行模式下面的访问规则是: >php.exe index.php(或者其它应用入口文件) 模块/控制器/操作/[参数名/参数值...] 可以看到,无论是URL访问还是命
-
thinkPHP5.0框架命名空间详解
本文实例讲述了thinkPHP5.0框架命名空间.分享给大家供大家参考,具体如下: 命名空间 ThinkPHP采用命名空间方式定义和自动加载类库文件,有效的解决了多模块和Composer类库之间的命名空间冲突问题,并且实现了更加高效的类库自动加载机制. 如果不清楚命名空间的基本概念,可以参考PHP手册:PHP命名空间 特别注意的是,如果你需要调用PHP内置的类库,或者第三方没有使用命名空间的类库,记得在实例化类库的时候加上 \,例如: // 错误的用法 $class = new stdClass
-
ThinkPHP5实现作业管理系统中处理学生未交作业与已交作业信息的方法
本文实例讲述了ThinkPHP5实现作业管理系统中处理学生未交作业与已交作业信息的方法.分享给大家供大家参考,具体如下: 在作业管理系统中,学生登陆到个人中心后可以通过左侧的菜单查看自己已经提交的作业和未提交作业.那么在系统中如何实现这些数据的查询的呢?首先我们需要弄清楚学生(Student).班级(class).作业提交表(Submit)这三个表之间的关系. 1. 每个学生都属于一个班级 2. 班级里的每个学生都会被布置同样的作业 3. 学生提交作业后会在作业提交表中添加响应的记录,如学生的I
-
解密ThinkPHP3.1.2版本之独立分组功能应用
ThinkPHP的分组功能是广为开发者使用的一个具有很大实用价值的功能,该功能可以解决中大型项目情况中MVC分层文件过多导致不易管理的问题. 而ThinkPHP3.1.2版本添加的独立分组功能则为此类问题提出了新的解决思路,更加适合组件化的开发模式.我们就此了解下这一功能. 1.概述 独立分组功能不影响原有分组模式的运行,并且原有分组模式仅需移动目录结构即可完成独立分组模式的升级,无需任何应用代码的改动. 而且新的独立分组可以很方便的独立装卸和移动,可以摆脱原来普通分组文件分散在各个不同的目录下
-
Thinkphp中的curd应用实用要点
这个主要闲的没事给大家写一下curd的具体应用,当然这里边主要讲curd,我做的是用户的增删改查,没有用三大自动 首先 复制代码 代码如下: class IndexAction extends Action { public function index(){ header("Content-Type:text/html; charset=utf-8″); $user=M('user'); $list=$user->select(); $this->assign('user',$li
-
thinkPHP5.0框架引入Traits功能实例分析
本文实例讲述了thinkPHP5.0框架引入Traits功能.分享给大家供大家参考,具体如下: ThinkPHP 5.0开始采用trait功能(PHP5.4+)来作为一种扩展机制,可以方便的实现一个类库的多继承问题. Traits 是一种为类似 PHP 的单继承语言而准备的代码复用机制.Trait 为了减少单继承语言的限制,使开发人员能够自由地在不同层次结构内独立的类中复用方法集.Traits和类组合的语义是定义了一种方式来减少复杂性,避免传统多继承和混入类(Mixin)相关的典型问题. 但由于
-
thinkPHP5.0框架应用请求生命周期分析
本文实例讲述了thinkPHP5.0框架应用请求生命周期.分享给大家供大家参考,具体如下: 本篇内容我们对ThinkPHP5.0的应用请求的生命周期做大致的介绍,以便于开发者了解整个执行流程. 1.入口文件 用户发起的请求都会经过应用的入口文件,通常是 public/index.php文件.当然,你也可以更改或者增加新的入口文件. 通常入口文件的代码都比较简单,一个普通的入口文件代码如下: // 应用入口文件 // 定义项目路径 define('APP_PATH', __DIR__ . '/..
-
ThinkPHP模板替换与系统常量及应用实例教程
本文讲述了ThinkPHP模板替换与系统常量及应用,是ThinkPHP项目开发的基础知识,有必要加以牢固掌握.具体如下: 默认的模板替换规则: ../Public : 会被替换成当前项目的公共模板目录 通常是 / 项目目录 /Tpl/default/Public/ __PUBLIC__ :会被替换成当前网站的公共目录 通常是 /Public/ __TMPL__ : 会替换成项目的模板目录 通常是 / 项目目录 /Tpl/default/ __ROOT__ : 会替换成当前网站的地址(不含域名)
-
thinkphp3.2中Lite文件替换框架入口文件或应用入口文件的方法
本文实例讲述了thinkphp3.2中Lite文件替换框架入口文件或应用入口文件的方法.分享给大家供大家参考.具体分析如下: 3.2版本支持根据当前的运行环境生成Lite文件,可以替换框架的入口文件或者应用入口文件,提高运行效率. 我们的建议是在生产环境中关闭调试模式后生成Lite文件. 注意,目前SAE平台不支持直接生成Lite文件. 生成Lite文件 要生成Lite文件,需要在入口文件中增加常量定义: 复制代码 代码如下: define('BUILD_LITE_FILE',true); 默认
-
ThinkPHP行为扩展Behavior应用实例详解
本文以实例的形式详细介绍了ThinkPHP的行为扩展Behavior的实现方法,有助于读者更灵活的掌握ThinkPHP的开发,具体步骤如下: ThinkPHP 行为扩展 (Behavior) 流程: 最先是读取配置文件信息: $mode = include is_file(CONF_PATH.'core.php')?CONF_PATH.'core.php':MODE_PATH.APP_MODE.'.php'; 读取配置文件信息 ThinkPHP\Mode\common.php // 行为扩展定义
随机推荐
- 修改ini文件的批处理与vbs代码
- Ubuntu下安装mongodb 3.4的详细过程
- js仿土豆网带缩略图的焦点图片切换效果实现方法
- 详谈PHP中的密码安全性Password Hashing
- php处理带有中文URL的方法
- PHP 获取MySQL数据库里所有表的实现代码
- python 3.0 模拟用户登录功能并实现三次错误锁定
- Python实现的石头剪子布代码分享
- Android系统默认对话框添加图片功能
- mysql之set与enum的介绍
- mysql默认编码为UTF-8 通过修改my.ini实现方法
- 类似框架的js代码
- JDBCTM 指南:入门4 - Statement
- php数组函数序列之array_splice() - 在数组任意位置插入元素
- 程序员应该投资的10件事
- 一个php短网址的生成代码(仿微博短网址)
- PowerShell ISE中代码转换大小写的技巧
- SQL建立数据库及删除数据库命令
- Hibernate框架数据分页技术实例分析
- C语言中全局数组和局部数组的问题