一、ThinkPHP的输出
1、通过echo等php原生输出方式在页面中输出;
2、通过display方法输出(类似smarty模板引擎)参照:http://www.yusian.com/thread-11086-1-1.html ;
2.1、控制器实现:[PHP] 纯文本查看 复制代码 <?php
namespace Home\Controller;
use Think\Controller;
class IndexController extends Controller {
public function index(){
// 1、获取模型数据
$name = "Sian";
// 2、分配模板数据
$this->assign('data', $name);
// 3、调用模板显示
$this->display();
}
} 2.2、直接执行会出现如下所示错误提示:
2.3、原因在于默认情况下在Index控制器下的Index方法中执行$this->display()方法会加载视图模板目录下的Index目录下的index.html模板文件
2.4、错误提示没有找相对应的模板文件,因此在View目录下创建一个Index目录,在Index目录下创建一个index.html的模板文件
2.5、文件内容示例如下:[HTML] 纯文本查看 复制代码 <html>
<body>
<h1>Hello {$data}!</h1>
</body>
</html> 2.6、运行结果为Hello Sian!
3、修改左右定界符,'TMPL_L_DELIM'、'TMPL_R_DELIM' 两个配置项;
3.1、默认定界符为“{}”, 为防止与其他框架冲突,一般建议修改定界符
3.2、在配置文件中添加如所示[PHP] 纯文本查看 复制代码 'TMPL_L_DELIM' => '<{', // 修改左定界符
'TMPL_R_DELIM' => '}>', // 修改右定界符 二、ThinkPHP模型的使用
1、在开始之前,我们首先在数据库thinkphp中创建一个think_data数据表(以mysql数据库为例):[SQL] 纯文本查看 复制代码 CREATE TABLE IF NOT EXISTS `think_data`(
`id`int(8)unsigned NOT NULL AUTO_INCREMENT,
`data` varchar(255) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ;
INSERT INTO `think_data`(`id`,`data`) VALUES
(1,'thinkphp'),
(2,'php'),
(3,'framework');
2、如果我们需要读取数据库中的数据,就需要在模块配置文件中添加数据库连接信息如下:[PHP] 纯文本查看 复制代码 // 添加数据库配置信息
'DB_TYPE'=>'mysql',// 数据库类型
'DB_HOST'=>'127.0.0.1',// 服务器地址
'DB_NAME'=>'thinkphp',// 数据库名
'DB_USER'=>'root',// 用户名
'DB_PWD'=>'',// 密码
'DB_PORT'=>3306,// 端口
'DB_PREFIX'=>'think_',// 数据库表前缀
'DB_CHARSET'=>'utf8',// 数据库字符集 3、接下来,我们修改下控制器方法,添加读取数据的代码:[PHP] 纯文本查看 复制代码 <?php
namespace Home\Controller;
use Think\Controller;
class IndexController extends Controller {
public function index(){
// 1.1、创建数据库模型
$m = M('user');
// 1.2、查找数据
$array = $m->select();
// 1.3、取出数据
$name = $array[0]['username'];
// 2、分配模板数据
$this->assign('data', $name);
// 3、调用模板显示
$this->display();
}
} 三、源代码下载: |