mysql php pdo query print_r global echo
来源:互联网 发布:录视频软件下载 编辑:程序博客网 时间:2024/05/29 02:42
实验目的
mysqli语句切换到pdo语句
注意php5.6间相近版本可以mysqli和pdo混用,php7之后抛弃了mysqli,只有pdo
调用数据库有一个基本的检查,即,数据库是否打开,然后才有query语句,
$dbh=new PDO("mysql:host=".$DB_HOST.';dbname='.$DB_NAME, $DB_USER, $DB_PASS,array(PDO::MYSQL_ATTR_INIT_COMMAND => "set names utf8"));
在这样的语句中,我多次想检查$dbh的返回值,用echo就停止,后来换成print_r 语句输出 成PDO Object ( ) ,同时也发现只有if语句如if(!$dbh)等类似的用法,
print_r语句很好,可以打印任何类型的数据,即使不能打印也会用友好的方式告诉你结果。echo直接错误退出了。
global $DB_HOST,$DB_NAME,$DB_USER,$DB_PASS,$dbh; global的用法颠覆了我的全局变量定义的理解,神奇,她帮着我检验了mysqli和pdo的必须变量的关系。
require_once的操作不是太理解,包含进来文件后,执行就结束了,比如变量就变成了无关的,echo都是空值,global后才会出现原值。
这样处理连接更好
<?php
try {
$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass);
foreach($dbh->query('SELECT * from FOO') as $row) {
print_r($row);
}
$dbh = null;
} catch (PDOException $e) {
print "Error!: " . $e->getMessage() . "<br/>";
die();
}
?>
这样关闭
<?php
$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass);
// 在此使用连接
// 现在运行完成,在此关闭连接
$dbh = null;
?>
持久化连接,一般不建议
<?php
$dbh = new PDO('mysql:host=localhost;dbname=test', $user, $pass, array(
PDO::ATTR_PERSISTENT => true
));
?>
至此,基本可以把mysqli用pdo互换,等有空研究吧
参考 https://www.runoob.com/php/php-pdo.html
http://php.net/manual/zh/book.pdo.php
- mysql php pdo query print_r global echo
- php函数var_dump() 、print_r()、echo()
- php中echo(),print(),print_r()的区别
- echo(),print(),print_r()的区别 -php
- php中echo(),print(),print_r()的区别
- php中echo(),print(),print_r()的区别
- php echo print print_r的区别
- echo是PHP语句, print和print_r
- php中echo(),print(),print_r()的区别
- PHP中echo、print、print_r、printf、sprintf
- PHP中echo,print(),print_r()的区别
- php中echo(),print(),print_r()的区别
- php中echo、print、print_r区别
- PHP中echo(),print(),print_r()的区别
- php中print_r和echo区别
- PHP基础-echo,print,print_r,var_export,var_dump
- PHP中echo()和print_r的区别
- php中echo(),print(),print_r()的区别
- 如何理解云计算?很简单,就像吃货想吃披萨了...
- Android敏捷开发、CI(持续集成)探究
- hdu 1596 find the safest road (最短路径dijkstra SPFA Floyd)
- u-boot 编译改动了那些文件(2)-make all
- 文件上传
- mysql php pdo query print_r global echo
- nextval 和 currval
- 第5节-Linux界面介绍与开关机方法
- JavaWeb分页显示内容之分页查询的三种思路(数据库分页查询)
- SQL Server 索引
- System.load 和 System.loadLibrary区别与详解
- Django防止XSS攻击的几种方式
- Packets
- Docker之常用命令