小编于昨日参加朋友婚礼,浑身喜气洋洋。今天给用户带来的是关于thinkphp开发指南的纯技术性的文档,本文档目的很简单:
1、 帮助开发人员掌握thinkphp入门
2、 快速利用thinkphp进行项目开发
无忧主机www.51php.com,继续沿用通俗易懂的语言风格,描述如何基于thinkphp平台进行项目的开发,并熟练掌握thinkphp平台的使用。这是一个从了解到精通thinkphp的必备的thinkphp基础使用教程。
1、 thinkphp如何创建项目文件?
使用thinkphp建立开发项目是任务开始的第一步,建立项目主要包括:thinkphp项目的目录结构、生成入口文件、配置文件等这些基本文 件。这些项目,都是以单独的目录存在,与其它项目没有直接关联性。它们包含有完整的入口文件、配置文件、缓存文件和数据、插件、日志等目录文件,还有包含 语言包,是一个有机的整体。由于各个项目的独立存在,没有关联性,我们在建立项目的时候,可以将其它项目的目录结构复制来,然后再修改,达到快速建立项目 的目录。
2、 thinkphp入口文件定义
thinkphp框架的入口文件是怎么定义的类?使用“define”命令,可以轻松帮我们搞定。由于thinkphp的入口是采用单向模式,所以 每个项目都必须有一个入口文件来执行,否则应用无法生效。那么thinkphp入口文件位置应该怎么设置类?入口文件位置设置,没有特别的要求,无论是在php虚拟主机环 境上,还是独立服务器上都可以随意设置,不会是因为用的是空间或独立服务器而有所不同,通常我们将入口文件配置放在web根目录下(可以任意位置)。 Thinkphp使用经验,程序对入口文件的操作是越少越好,防止过多的处理工作,影响系统的稳定性,增加日后的维护工作量。请看无忧主机 (www.51php.com)给大家准备的一个案例,使用的编辑器是:“ecidplus”。
将入口文件设置在web根目录上index.php文件上。
define(‘THINK_PATH’, ‘../ThinkPHP’);
define(‘WEB_ROOT’,’../’);
define(‘APP_NAME’, ‘Admin’);
define(‘APP_PATH’, ‘.’);
require(“../config.php”);
require(THINK_PATH.”/ThinkPHP.php”);
$App = new App();
$App->init();
$App->exec();
这是一个thinkphp完整入口文件代码。为了用户能充分理解意思,我将每段代码的含义做了注释。见下图
使用thinkphp建站中,还有一个用户经常关心的功能,就是多域名绑定(子域名)的问题。有的空间商提供的php虚拟主机是不支持多域名绑定的 (如:无忧主机只只支持1个域名),这个时候,我们就可以通过thinkphp的入口为文件配置来实现多域名绑定问题。请点击阅读详解thinkphp多域名(子域名)支持配置解决方案了解thinkphp多域名绑定问题。
3、 thinkphp定义数据库访问
thinkphp数据库配置文件可以采用有多种方式对MySQL、MySQLi、MsSQL、PgSQL、SqLite和Oracle这些常见数据 库进行定义配置。用户可以按照下面给出的规范,编写自己的数据库驱动方式。无忧主机(www.51php.com)对thinkphp官方技术文档整理, 将常用的三种thinkphp数据库访问的配置方法展现给大家。
A、 定义在每个WEB应用中的配置文件:
define(‘DB_TYPE’, ‘mysql’);
define(‘DB_HOST’, ‘localhost’);
define(‘DB_NAME’,’ 51php’); //数据库名称
define(‘DB_USER’,’51phpser’); //数据库访问用户名
define(‘DB_PWD’,”); //数据库访问密码
define(‘DB_PORT’,”);
B、 Thinkphp系统最常用的配置访问,官方技术文档中也推荐使用这种定义方式
$db_dsn = “mysql://username:passwd@localhost :3306/dbName”;
$db = new Db($db_dsn);
C、 数组方式定义数据库配置参数
$DSN = array(
’dbms’ => ‘mysql’,
’username’ => ‘username’,
’password’ => ‘password’,
’hostname’ => ‘localhost’,
’hostport’ => ’3306′,
’database’ => ‘dbname’
);
$db = new Db($DSN);
注释B和C中的参数含义:username 数据库访问用户,passwd数据库访问密码,localhohst本地访问方式,dbname数据库密码,3306是mysql数据库默认访问端口。
4、 thinkphp系统调试命令
在thinkphp系统中,用户可以有很多选择对程序进行排错差错处理,方便程序员对项目进行排错分析。在thinkphp框架中,可以使用如下命令,对程序进行调试:
halt($msg) //输出错误信息,并中止执行
system_out($msg) //输出调试信息到日志文件
dump($var, $label=null, $echo=true) //输出变量信息
__DEBUG_START($label=”) //记录调试开始时间
__DEBUG_END($label=”) //输出调试范围运行时间(相同label属于一个调试范围)
get_include_contents($filename) //获取载入文件的内容
除此之外,用户还可以使用debug类来进行更加详细的程序调试处理,这些调试方法,可以方便的达到程序调试、排错的目的,极大的提高了用户的工作效率,节约开发时间。
5、为方便用户使用thinkphp建站开发,无忧主机(51php.com)将thinkphp常用系变量名整理出来,用户在开发过程中方便引用。