这篇文章主要介绍了ThinkPHP连接数据库操作,结合实例形式分析了thinkPHP基于DSN方式和数组传参的方式进行数据库连接的实现步骤与属性设置、控制器、模板使用等相关操作技巧,需要的朋友可以参考下
本文实例讲述了ThinkPHP连接数据库操作。分享给大家供大家参考,具体如下:
一 代码
1、完成入口函数的编写
<?php
define('THINK_PATH', '../ThinkPHP'); //定义ThinkPHP框架路径(相对于入口文件)
define('APP_NAME', 'App'); //定义项目名称
define('APP_PATH', './App'); //定义项目路径
require(THINK_PATH."/ThinkPHP.php"); //加载框架入口文件
App::run(); //实例化一个网站应用实例
?>
2、完成控制器的编写
<?php
header("Content-Type:text/html; charset=utf-8"); //设置页面编码格式
class IndexAction extends Action{
public function index(){
$db_dsn="mysql://root:root@127.0.0.1:3306/db_database30"; //定义DSN
$db = new Db(); //执行类的实例化
$conn=$db->getInstance($db_dsn); //连接数据库,返回数据库驱动类
$select=$conn->query('select * from think_user'); //执行查询语句
$this->assign('select',$select); // 模板变量赋值
$this->display(); // 指定模板页
}
public function type(){
$dsn = array(
'dbms' => 'mysql',
'username' => 'root',
'password' => 'root',
'hostname' => 'localhost',
'hostport' => '3306',
'database' => 'db_database30'
);
$db = new Db();
$conn=$db->getInstance($dsn); //连接数据库,返回数据库驱动类
$select=$conn->query('select * from think_type'); //执行查询语句
$this->assign('select',$select); // 模板变量赋值
$this->display('type'); // 指定模板页
}
}
?>
3、完成模板编写
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>用户信息输出</title>
<link href="__ROOT__/Public/Css/style.css" rel="external nofollow" rel="external nofollow" rel="stylesheet" type="text/css" />
</head>
<body>
<table width="405" border="1" cellpadding="1" cellspacing="1" bgcolor="#99CC33" bordercolor="#FFFFFF">
<tr>
<td colspan="3" bgcolor="#FFFFFF" class="title" align="center">用户信息</td>
</tr>
<tr class="title">
<td bgcolor="#FFFFFF" width="44">ID</td>
<td bgcolor="#FFFFFF" width="120">名称</td>
<td bgcolor="#FFFFFF" width="223">地址</td>
</tr>
<volist name='select' id='user' >
<tr class="content">
<td bgcolor="#FFFFFF"> {$user.id}</td>
<td bgcolor="#FFFFFF"> {$user.user}</td>
<td bgcolor="#FFFFFF"> {$user.address}</td>
</tr>
</volist>
</table>
</body>
</html>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>类别输出</title>
<link href="__ROOT__/Public/Css/style.css" rel="external nofollow" rel="external nofollow" rel="stylesheet" type="text/css" />
</head>
<body>
<table width="405" border="1" cellpadding="1" cellspacing="1" bgcolor="#99CC33" bordercolor="#FFFFFF">
<tr>
<td colspan="3" bgcolor="#FFFFFF" class="title" align="center">类别输出</td>
</tr>
<tr class="title">
<td bgcolor="#FFFFFF" width="44">ID</td>
<td bgcolor="#FFFFFF" width="120">类别名称</td>
<td bgcolor="#FFFFFF" width="223">添加时间</td>
</tr>
<volist name='select' id='type' >
<tr class="content">
<td bgcolor="#FFFFFF"> {$type.id}</td>
<td bgcolor="#FFFFFF"> {$type.typename}</td>
<td bgcolor="#FFFFFF"> {$type.dates}</td>
</tr>
</volist>
</table>
</body>
</html>
二 运行结果
更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》、《thinkPHP模板操作技巧总结》、《ThinkPHP常用方法总结》、《codeigniter入门教程》、《CI(CodeIgniter)框架进阶教程》、《Zend FrameWork框架入门教程》及《PHP模板技术总结》。
希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。
沃梦达教程
本文标题为:ThinkPHP连接数据库操作示例【基于DSN方式和数组传参的方式】
基础教程推荐
猜你喜欢
- thinkphp3.2.3框架动态切换多数据库的方法分析 2023-03-19
- php array分组,PHP中array数组的分组排序 2022-08-01
- 使用PHP开发留言板功能 2023-03-13
- PHP实现Redis单据锁以及防止并发重复写入 2022-10-12
- PHP获取MySQL执行sql语句的查询时间方法 2022-11-09
- laravel 解决多库下的DB::transaction()事务失效问题 2023-03-08
- 在Laravel中实现使用AJAX动态刷新部分页面 2023-03-02
- PHP中的错误及其处理机制 2023-06-04
- laravel ORM关联关系中的 with和whereHas用法 2023-03-02
- PHP命名空间简单用法示例 2022-12-01