
//文件conn.php,用于连接数据库
class
DB_Conn
{
}
//文件
db.php,
用于数据库 *** 作,这个类必然需要使用数据库连接对象,因此引用conn.php
require_once
conn.php
class
DB
{
}
//文件user.php
require_once
'db.php'
class
User
{
public
function
getUserById($id)
{
$conn
=
new
Db_Conn()
$db
=
new
Db()
}
}以上只是示意,如果文件不在一个目录下记得修改路径。而且,一般来说数据库对象应该包含连接数据库和数据 *** 作的全部功能,不需要分别写在两个类里面。我觉得你对面向对象的理解还很浅薄,需要进一步累积经验。
thinkphp连接数据库的方法:ThinkPHP内置了抽象数据库访问层,把不同的数据库 *** 作封装起来,只需要使用公共的Db类进行 *** 作,而无需针对不同的数据库写不同的代码和底层实现,Db类会自动调用相应的数据库驱动来处理。目前的数据库包括Mysql、SqlServer、PgSQL、Sqlite、Oracle、Ibase、Mongo,也包括对PDO的支持,如果应用需要使用数据库,必须配置数据库连接信息,数据库的配置文件有多种定义方式。
常用的配置方式是在项目配置文件中添加下面的参数:
<?php
//项目配置文件
return array(
//数据库配置信息
'DB_TYPE' =>'mysql', // 数据库类型
'DB_HOST' =>'localhost', // 服务器地址
'DB_NAME' =>'thinkphp', // 数据库名
'DB_USER' =>'root', // 用户名
'DB_PWD'=>'', // 密码
'DB_PORT' =>3306, // 端口
'DB_PREFIX' =>'think_', // 数据库表前缀
//其他项目配置参数
// ...
)
需要注意的是,ThinkPHP的数据库连接的惰性的,所以并不是在实例化的时候就连接数据库,而是在有实际的数据 *** 作的时候才会去连接数据库(额外的情况是,在系统第一次实例化模型的时候,会自动连接数据库获取相关模型类对应的数据表的字段信息)。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)