thikphp 单独php文件怎样操作数据库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_', // 数据库表前缀
//其他项目配置参数
// ...
);
或者采用如下配置
'DB_DSN' = 'mysql://username:password@localhost:3306/DbName'
使用DB_DSN方式定义可以简化配置参数,DSN参数格式为:
数据库类型://用户名:密码@数据库地址:数据库端口/数据库名
如果两种配置参数同时存在的话 , DB_DSN配置参数优先 。
注意:如果要设置分布式数据库,暂时不支持DB_DSN方式配置 。1
如果采用PDO驱动的话,则必须首先配置DB_TYPE 为pdo,然后还需要单独配置其他参数,例如:
//PDO连接方式
'DB_TYPE'= 'pdo', // 数据库类型
'DB_USER'= 'root', // 用户名
'DB_PWD'= '', // 密码
'DB_PREFIX' = 'think_', // 数据库表前缀
'DB_DSN'= 'mysql:host=localhost;dbname=thinkphp;charset=UTF-8'
注意:PDO方式的DB_DSN配置格式有所区别,根据不同的数据库类型设置有所不同 。
配置文件定义的数据库连接信息一般是系统默认采用的 , 因为一般一个项目的数据库访问配置是相同的 。该方法系统在连接数据库的时候会自动获取,无需手动连接 。
可以对每个项目和不同的分组定义不同的数据库连接信息,如果开启了调试模式的话,还可以在不同的应用状态的配置文件里面定义独立的数据库配置信息 。1
第二种 在模型类里面定义connection属性
如果在某个模型类里面定义了connection属性的话,则实例化该自定义模型的时候会采用定义的数据库连接信息,而不是配置文件中设置的默认连接信息,通常用于某些数据表位于当前数据库连接之外的其它数据库 , 例如:
//在模型里单独设置数据库连接信息
protected $connection = array(
'db_type'= 'mysql',
'db_user'= 'root',
'db_pwd'= '1234',
'db_host'= 'localhost',
'db_port'= '3306',
'db_name'= 'thinkphp'
);
也可以采用DSN方式定义 , 例如:
//或者使用DSN定义
protected $connection = 'mysql://root:1234@localhost:3306/thinkphp';
如果我们已经在配置文件中配置了额外的数据库连接信息,例如:
//数据库配置1
'DB_CONFIG1' = array(
'db_type'= 'mysql',
'db_user'= 'root',
'db_pwd'= '1234',
'db_host'= 'localhost',
'db_port'= '3306',
'db_name'= 'thinkphp'
),
//数据库配置2
'DB_CONFIG2' = 'mysql://root:1234@localhost:3306/thinkphp';
那么,我们可以把模型类的属性定义改为:
//调用配置文件中的数据库配置1
protected $connection = 'DB_CONFIG1';
//调用配置文件中的数据库配置2
protected $connection = 'DB_CONFIG2';
如果采用的是M方法实例化模型的话,也可以支持传入不同的数据库连接信息 , 例如:
$User = M('User','other_','mysql://root:1234@localhost/demo');
表示实例化User模型,连接的是demo数据库的other_user表,采用的连接信息是第三个参数配置的 。如果我们在项目配置文件中已经配置了DB_CONFIG2的话,也可以采用:
$User = M('User','other_','DB_CONFIG2');
如果你的个别数据表没有定义任何前缀的话,可以在前缀参数中传入NULL,例如:
$User = M('User',Null,'DB_CONFIG2');
表示实例化User模型,连接的是demo数据库的user表 。
需要注意的是,ThinkPHP的数据库连接的惰性的 , 所以并不是在实例化的时候就连接数据库,而是在有实际的数据操作的时候才会去连接数据库(额外的情况是,在系统第一次实例化模型的时候,会自动连接数据库获取相关模型类对应的数据表的字段信息) 。
php中选择打开数据库的方法是在mysql数据库中php操作文件数据库,创建一个test数据库,用于测试 。
请点击输入图片描述
新建一个php文件 , 命名为test.php,用于讲解php如何选择要操作php操作文件数据库的数据库 。
请点击输入图片描述
在test.php文件中 , 使用header()方法将页面php操作文件数据库的编码格式设置为utf-8,避免输出中文乱码 。
请点击输入图片描述
在test.php文件中 , 使用mysql_connect()函数,通过账号和密码创建一个数据库的连接 。
请点击输入图片描述
在test.php文件中 , 再使用mysql_select_db()函数选择要操作的数据库test,选择数据库成功,则返回true,否则,返回false 。最后,通过if语句判断结果 。
请点击输入图片描述
在浏览器打开test.php文件,查看结果 。
请点击输入图片描述
END
总结:
1、创建一个test数据库 。
2、使用mysql_connect()函数创建一个数据库的连接 。
3、再使用mysql_select_db()函数选择要操作的数据库test,并通过if语句判断结果 。
php怎么操作数据库~呢?PHP链接数据库有几种方式
mysqli:
?php
$servername = "localhost";
$username = "username";
$password = "password";
// 创建连接
$conn = new mysqli($servername, $username, $password);
// 检测连接
if ($conn-connect_error) {
die("连接失败: " . $conn-connect_error);
}
echo "连接成功";
?
也可以使用PDO进行链接 , 前提是你必须在php.ini中开启PDO:
?php
$servername = "localhost";
$username = "username";
$password = "password";
try {
$conn = new PDO("mysql:host=$servername;dbname=myDB", $username, $password);
echo "连接成功";
}
catch(PDOException $e)
{
echo $e-getMessage();
}
?
建议使用PDO,功能更加强大 , 兼容各种数据库
关于这个问题,差不多就是这个样子的了,你如果不明白,可以自己去后盾瞅瞅,我这些都是在后盾上学的,有空可以去看一下,就算不喜欢也没关系啊 , 何乐而不为呢?
.php文件操纵数据库,让android客户端请求你们的php接口地址,你们返回json数据 。
Android接收php传值肯定是json格式,接口端,php查询出数据库数据数据,然后再转成json格式输出
【php操作文件数据库 php数据库连接文件】header('Content-Type:application/json; charset=utf-8');
echo json_encode($newData, JSON_UNESCAPED_UNICODE|JSON_PRETTY_PRINT|JSON_UNESCAPED_SLASHES);
关于php操作文件数据库和php数据库连接文件的介绍到此就结束了 , 不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站 。
推荐阅读
- 宽带怎么连接两台路由器,宽带怎么连接两台路由器设置
- 抖家直播工具授权,抖音官方授权直播间可信吗
- linux重启id命令 linux重启常用命令
- go语言接口变量,go语言声明变量有哪几种方式
- mysql数据表前缀批量修改,mysql 修改数据库下所有表字符集
- 直播带货热门行业有哪些,直播带货领域
- 死机循环java代码 java死循环输出代码
- 中石化手机怎么登录不了,中石化手机怎么登录不了了呢
- 包含nosql建立大数据系统有限公司的词条