PHP:ThinkPHP
- 定义框架路径、项目路径(可选)
- 定义调试模式和应用模式(可选)
- 定义系统相关常量(可选)
- 载入框架入口文件(必须)
命名规范
类文件都是以.class.php为后缀(这里是指的ThinkPHP内部使用的类库文件,不代表外部加载的类库文件),使用驼峰法命名,并且首字母大写,例如 DbMysql.class.php ; 类的命名空间地址和所在的路径地址一致,例如 Home\Controller\UserController 类所在的路径应该是 Application/Home/Controller/UserController.class.php ; 确保文件的命名和调用大小写一致,是由于在类Unix系统上面,对大小写是敏感的(而ThinkPHP在调试模式下面,即使在Windows平台也会严格检查大小写); 类名和文件名一致(包括上面说的大小写一致),例如 UserController 类的文件命名是 UserController.class.php , InfoModel类的文件名是 InfoModel.class.php , 并且不同的类库的类命名有一定的规范; 函数、配置文件等其他类库文件之外的一般是以 .php 为后缀(第三方引入的不做要求); 函数的命名使用小写字母和下划线的方式,例如 get_client_ip ; 方法的命名使用驼峰法,并且首字母小写或者使用下划线“_”,例如 getUserName , _parseType ,通常下划线开头的方法属于私有方法; 属性的命名使用驼峰法,并且首字母小写或者使用下划线“_”,例如 tableName 、 _instance ,通常下划线开头的属性属于私有属性; 以双下划线“__”打头的函数或方法作为魔法方法,例如 __call 和 __autoload ; 常量以大写字母和下划线命名,例如 HAS_ONE 和 MANY_TO_MANY ; 配置参数以大写字母和下划线命名,例如 HTML_CACHE_ON ; 语言变量以大写字母和下划线命名,例如 MY_LANG ,以下划线打头的语言变量通常用于系统语言变量,例如 _CLASS_NOT_EXIST_ ; 对变量的命名没有强制的规范,可以根据团队规范来进行; ThinkPHP的模板文件默认是以 .html 为后缀(可以通过配置修改); 数据表和字段采用小写加下划线方式命名,并注意字段名不要以下划线开头,例如 think_user 表和 user_name 字段是正确写法,类似 _username 这样的数据表字段可能会被过滤。
由于ThinkPHP默认全部使用UTF-8编码,所以请确保你的程序文件采用UTF-8编码格式保存,并且去掉BOM信息头(去掉BOM头信息有很多方式,不同的编辑器都有设置方法,也可以用工具进行统一检测和处理),否则可能导致很多意想不到的问题。
开发建议
遵循框架的命名规范和目录规范; 开发过程中尽量开启调试模式,及早发现问题; 多看看日志文件,查找隐患问题; 养成使用I函数获取输入变量的好习惯; 更新或者环境改变后遇到问题首要问题是清空Runtime目录;建议保持大写定义配置参数的规范需要注意的是,二级参数配置区分大小写,也就说读取确保和定义一致在ThinkPHP中,一般来说应用的配置文件是自动加载的,加载的顺序是:惯例配置->应用配置->模式配置->调试配置->状态配置->模块配置->扩展配置->动态配置
应用配置文件也就是调用所有模块之前都会首先加载的公共配置文件(默认位于 Application/Common/Conf/config.php )。如果更改了公共模块的名称的话,公共配置文件的位置也相应改变
名称
|
描述
|
应用
|
基于同一个入口文件访问的项目我们称之为一个应用。
|
模块
|
一个应用下面可以包含多个模块,每个模块在应用目录下面都是一个独立的子目录。
|
控制器
|
每个模块可以包含多个控制器,一个控制器通常体现为一个控制器类。
|
操作
|
每个控制器类可以包含多个操作方法,也可能是绑定的某个操作类,每个操作是URL访问的最小单元。
|
PHP:ThinkPHP相关推荐
- php+jquery实现图片上传预览_和拖动位置值,PHP教程:thinkphp jquery实现图片上传和预览效果...
<PHP教程:thinkphp jquery实现图片上传和预览效果>要点: 本文介绍了PHP教程:thinkphp jquery实现图片上传和预览效果,希望对您有用.如果有疑问,可以联系我 ...
- php中msubstr,PHP学习:thinkphp中字符截取函数msubstr()用法分析
<PHP学习:thinkphp中字符截取函数msubstr()用法分析>要点: 本文介绍了PHP学习:thinkphp中字符截取函数msubstr()用法分析,希望对您有用.如果有疑问,可 ...
- PHP三级联动视频教程,PHP教程:thinkPHP实现的省市区三级联动功能示例
<PHP教程:thinkPHP实现的省市区三级联动功能示例>要点: 本文介绍了PHP教程:thinkPHP实现的省市区三级联动功能示例,希望对您有用.如果有疑问,可以联系我们. 本文实例讲 ...
- 渗透测试之路:ThinkPHP漏洞复现
1)简介 ThinkPHP是一个免费开源的,快速的,简单的面向对象的国产轻量级PHP开发框架. ThinkPHP遵循Apache2开源协议发布,是为了敏捷WEB应用开发和简化企业级应用开而诞生的,具有 ...
- PHP:ThinkPHP使用PHPMailer发送html邮件
文档 https://github.com/PHPMailer/PHPMailer 安装 composer require phpmailer/phpmailer 代码示例 配置文件 config/m ...
- php lts版本,官宣:ThinkPHP发布首个LTS版本
### 2018 年 10 月 22 日 发布 `5.1`版本自2018年元旦正式发布以来,在团队和社区的共同努力下,经过近十个月的迭代更新,共计发布了26个版本(更新记录[查看这里](https:/ ...
- PHP开发环境配置:ThinkPHP与IDE
集成环境采用XAMPP 目录 ThinkPHP 配置 PHP IDE 选择 ThinkPHP 配置时遇到的问题及解决 ThinkPHP 配置 一开始参考的是 XAMPP和ThinkPHP 5.0的安装 ...
- 勿喷:thinkphp项目怎么跑起来
只是记录自己的囧事,路过的家人们别喷. 一个新开的小公司用什么框架,往往取决于招到的第一批程序员. 3年前公司官网用的thinkphp,现在用的java,因为语言不一样,现任后台并不愿意动前任后台的代 ...
- 12月5日:thinkphp模板
今天学习ThinkPHP中的模板部分内容 接口开发,看不到dom结构,页面信息都是通过js或者一些其他技术引入 模板:是用来渲染前端页面,在后端的api接口开发中并不会常用到模板,但是后台管理页面却会 ...
最新文章
- 国产GPU为何“一夜杀到老黄城下”?
- XCode4.3.3 + iOS5.1 无证书开发并生成app、ipa文件
- MPMoviePlayerController 电影播放器
- JQuery选中的对象和非选中的其他对象分别执行不同动作
- vc 代码检查工具_C++网络安全入侵检测技术模块及源程序代码
- android定位会出现的问题,Android 定位当前位置可能出现的问题
- git菜单形式的_Idea:Git的常用菜单操作和常用命令
- Java学习-Overload和Override的区别
- 2.1 LibCurl编程流程(转)
- 51. Element replaceChild() 方法
- 树莓派modelB无法识别exFat格式的SD卡
- Ae/Pr数字转胶片调色插件 FilmConvert Pro for Mac v2.40破解版
- 无线网络dns服务器是多少,中国移动宽带dns是多少?
- Oracle定时任务DBMS_JOB
- How to compile a node file?如何编译一个节点文件?
- 从一坨「便便」说起,大V亲测iPhone X为什么这么贵!
- 怎么用wifi进e站_科普微e站 | 注意!路由器千万别再这样用,当心信号越来越差!...
- 支付宝架构有多牛?还没看完我就跪了...
- java获取当天星期几
- 学校运动会广播稿计算机,学校运动会广播稿
热门文章
- [转]网易云音乐API分析
- Matlab+Robotic toolbox (各版本免费获取,及安装步骤)
- 程序员最值得听的歌曲TOP10
- 三菱系统四轴正反转参数_三菱第四轴参数.docx
- 为什么要选择网络公关公司压制负面影响,维护好品牌?
- omniplan导出html,OmniPlan Pro 3.10.4 最NB的项目管理流程软件
- java.sql.SQLSyntaxErrorException Unknown column····
- The security strength of SHA-1 digest algorithm is not sufficient for this key size
- Oracle将小数转换为百分数;及将小于1的数字to_char()转成字符串后,个位0丢失的解决办法
- 利用友元函数与友元类定义复数类,实现基本运算