PDO(PHPData Objects)是一种在 PHP 里连接数据库的使用接口。PDO 与 mysqli 曾经被建议用来取代原本 PHP 在用的 mysql 相关函数,基于数据库使用的安全性,因为后者欠缺对于 SQL 注入的防护。
相关概念
PHP 数据对象(PDO) 扩展为 PHP 访问数据库定义了一个轻量级的一致接口。实现 PDO 接口的每个数据库驱动可以公开具体数据库的特性作为标准扩展功能。 注意利用 PDO 扩展自身并不能实现任何数据库功能;必须使用一个具体数据库的 PDO 驱动来访问数据库服务。
PDO 提供了一个数据访问抽象层,这意味着,不管使用哪种数据库,都可以用相同的函数(方法)来查询和获取数据。 PDO 不提供数据库抽象层;它不会重写 SQL,也不会模拟缺失的特性。如果需要的话,应该使用一个成熟的抽象层。
从 PHP 5.1 开始附带了 PDO,在 PHP 5.0 中是作为一个PECL扩展使用。 PDO 需要 PHP 5 核心的新 OO 特性,因此不能在较早版本的 PHP 上运行。
安装配置
Unix 系统
1. 自 PHP 5.1.0 起,PDO 和 PDO_SQLITE 驱动默认可用。对于自己选择的数据库,需要启用相应的 POD 驱动。
2. 当作为一个共享模块安装 PDO 时,需要更新 php.ini 文件以便当 PHP 运行时 PDO 扩展能被自动加载。还需要在那里启用具体的数据库驱动;确保它们被列在 pdo.so 那一行之后,因为 PDO 必须在具体的 数据库扩展被载入前初始化。如果静态地构建 PDO 和 具体数据库扩展,可以跳过此步。
extension=pdo.so
程序示例
以下是一个简单的 PDO 更新交易数据库的代码,其中采用了预处理的方式将运行语句与参数隔离:
$query = “UPDATE `payment` SET `status` = ‘2’, `id` = ?, `method` = ? WHERE `payment_id` = ? and `status` = ‘1’”;
$stmt = $this -> pdo -> prepare($query);
$stmt -> bindParam(1, $id);
$stmt -> bindParam(2, $type);
$stmt -> bindParam(3, $payment_id);
$result = $stmt -> execute();
?>
凡注有"环球传媒网"或电头为"环球传媒网"的稿件,均为环球传媒网独家版权所有,未经许可不得转载或镜像;授权转载必须注明来源为"环球传媒网",并保留"环球传媒网"的电头。
- 韩式炸鸡多少钱一份 韩国的炸鸡一般多少钱2022-06-15
- 为什么有时候月亮特别大 凌晨四点看到超级2022-06-15
- 北京工体哪个夜店最嗨 三里屯酒吧消费怎么2022-06-15
- 每日热门:热力学第一第二定律是什么?能量2022-06-15
- 每日速读!古船女人和井(篱笆女人狗、辘轳2022-06-15
- 每日讯息!欧美经典摇滚歌曲有哪些?摇滚歌曲2022-06-15
- 每日关注!岗位调动申请书范文 简单的工作2022-06-15
- 【聚看点】岁月如水:岁月如水,醉美流年2022-06-15
- 观焦点:建行密码丢失如何找回?建行手机银2022-06-15
- 观速讯丨怎么安装摄像头?自己安装监控详细2022-06-15
- 今日热搜:德川家康家训是什么?一起看看《2022-06-15
- 今日快讯:皮鞋怎么保养?皮鞋保养的小技巧2022-06-15
- 观察:coat翻译中文是什么意思?coat外套2022-06-15
- 观天下!我国有哪些神话故事?60个中国古代2022-06-15
- 丈夫死了妻子用还钱么 丈夫欠款死亡妻子该2022-06-15
- 美国黄石公园火山喷发 美国黄石国家公园2022-06-15
- 每日看点!含硒第一名的水果是什么?硒含量最2022-06-15
- 看热讯:曾经心痛dj有没有?曾经心痛dj舞曲2022-06-15
- 信息:犀利哥现状怎么样?犀利哥最帅最霸气2022-06-15
- 动态:自己的神话(自己创造一个神话故事)2022-06-15
- 今日热讯:flv电影在哪里可以下载?下载app2022-06-15
- 儿童封口贴能纠正张嘴睡觉吗 孩子张嘴睡觉2022-06-15
- 星海:一站式跨境浏览,探索全球!2022-06-15
- 【海淘狂欢节】鱼GO全球大促季!这些海淘优2022-06-15
- 招商银行存款有风险吗 中国银行非指定账户2022-06-15
- 为什么法官都喜欢调解 实名举报法官有用吗2022-06-15
- 今年全球最高温度可达到多少度 高温低温怎2022-06-15
- 喉咙不痛但又有异物感 咽喉有异物感是怎2022-06-15
- 献血对身体有害吗 献血屋献血流程2022-06-15
- 今日热门!刘彻和卫子夫的关系? 刘彻一生最2022-06-15