浅谈PHP的数据库接口和技术

 更新时间:2016年12月09日 09:47:49   投稿:jingxian  
下面小编就为大家带来一篇浅谈PHP的数据库接口和技术。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

1、php支持哪些数据库(拥有哪些数据库接口)

Adabas D ,InterBase ,PostgreSQL ,dBase ,FrontBase ,SQLite ,Empress ,mSQL ,Solid ,FilePro(只读),Direct MS-SQL ,Sybase ,Hyperwave ,MySQL ,Velocis ,IBM DB2 ,ODBC ,Unix dbm ,informix ,Oracle(OCI7 和 OCI8),Ingres ,Ovrimos

以上数据库都支持,简言之,支持绝大多数主流数据库

2、php原生操作mysql数据库方法

<?php
//数据库操作
//1.导入数据库
require("../../public/dbconfig.php");
//2.连接数据库
$link=mysql_connect(HOST,USER,PASS) or die("数据库连接失败");
//3.选择数据库,设置字符集
mysql_select_db(DBNAME,$link);
mysql_set_charset("utf8");
//4.编写sql语句,发送sql语句到数据库
$sql="select * from users";
$res=mysql_query($sql,$link);
//5.解析结果集
while($user=mysql_fetch_assoc($res)){
echo "<tr align='center'>";
echo "<td>{$userstate[$user['state']]}</td>";
echo "<td>{$user['username']}</td>";
echo "<td>".date("Y-m-d",$user['addtime'])."</td>";
echo "<td>
<a href='edit.php?id={$user['id']}'>修改</a> 
<a href='action.php?a=del&id={$user['id']}'>删除</a>
</td>";
echo "</tr>";
}
mysql_free_result($res);
mysql_close($link);
?>

3、php的PDO概念

PDO即PHP数据对象,将数据作为对象来操作,提高了操作数据的安全性和便捷性,从PHP5.1版本开始支持,例如预处理语句(prepared statements)、绑定参数(bound parameters)、可滚动游标(scrollable cursors)、定位更新(positioned updates)以及 LOB。

DAO(Data Access Object) 数据访问对象是一个面向对象(PDO)的数据库接口,在很多PHP框架中通过对原生的PDO封装形成安全便捷的数据处理接口方法,下例为YII中的DAO方法:

http://www.yii-china.com/doc/guide/db_dao.html

<?php>
//在advanced\common\config\main-local.php的conponents中配置好db;
//连接数据库
$connection = Yii::$app->db;
//编写预处理查询语句
$command = $connection->createCommand('SELECT * FROM post');
//执行操作
$posts = $command->queryAll();
$post = $command->queryOne();
$titles = $command->queryColumn();
<?php>

4、活动记录Active Record

ActiveRecord是一种设计模式,他的直接目的不是为了操作数据库的,而是一种数据模型,相对于DAO是数据的更高级抽象。它提供了一个面向对象的统一接口,

用以访问数据库中的数据。

使用AR更大的简化代码,减少了出错的可能,下例是YII中的AR操作方法

//数据表customer对象实例化
$customer = new Customer();
$customer->name = 'Qiang';
$customer->save(); // 一行新数据插入 customer 表

5、什么情况下使用DAO或AR了

复杂业务逻辑使用DOA, 反之用AR

以上这篇浅谈PHP的数据库接口和技术就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • PHP不用递归实现无限分级的例子分享

    PHP不用递归实现无限分级的例子分享

    这篇文章主要介绍了PHP不用递归实现无限分级的例子,实际上是一种思路,并用简单的例子来说明,需要的朋友可以参考下
    2014-04-04
  • PHP MySql增删改查的简单实例

    PHP MySql增删改查的简单实例

    下面小编就为大家带来一篇PHP MySql增删改查的简单实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-06-06
  • PHP递归获取目录内所有文件的实现方法

    PHP递归获取目录内所有文件的实现方法

    下面小编就为大家带来一篇PHP递归获取目录内所有文件的实现方法。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-11-11
  • Laravel 5框架学习之表单验证

    Laravel 5框架学习之表单验证

    Laravel 通过 Validation 类让您可以简单、方便的验证数据正确性及查看相应的验证错误信息。如果是更复杂的验证场景,你可能需要创建一个"表单请求"。表单请求是一个自定义的请求类包含了一些验证的逻辑。你可以通过 Artisan 的命令行 make:request 来创建一个表单请求类
    2015-04-04
  • PHP制作百度词典查词采集器

    PHP制作百度词典查词采集器

    这篇文章主要介绍了PHP制作百度词典查词采集器的相关资料,需要的朋友可以参考下
    2015-01-01
  • php实现统计IP数及在线人数的示例代码

    php实现统计IP数及在线人数的示例代码

    这篇文章主要介绍了php实现统计IP数及在线人数的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • 浅析PHP中的 inet_pton 网络函数

    浅析PHP中的 inet_pton 网络函数

    inet_pton是一个IP地址转换函数,可以在将IP地址在“点分十进制”和“二进制整数”之间转换,这篇文章主要介绍了PHP inet_pton 网络函数,需要的朋友可以参考下
    2019-12-12
  • PHP实现抽奖功能实例代码

    PHP实现抽奖功能实例代码

    这篇文章主要介绍了PHP如何实现抽奖功能,文中示例代码非常详细,供大家参考和学习,感兴趣的朋友可以了解下
    2020-06-06
  • php array_multisort 对数组进行排序详解及实例代码

    php array_multisort 对数组进行排序详解及实例代码

    这篇文章主要介绍了php array_multisort 对数组进行排序详解及实例代码的相关资料,需要的朋友可以参考下
    2016-10-10
  • php之Smarty模板使用方法示例详解

    php之Smarty模板使用方法示例详解

    这篇文章主要介绍了php之Smarty模板的使用方法,需要的朋友可以参考下
    2014-07-07

最新评论