想用PHP玩转DB?其实挺容易滴!下面就让我教大家如何利用PHP里的PDO库和MySQL数据库,让查阅数据更加简便快捷~
安装PDO库
检查下你的PHP是否含有PDO这个扩展!如果是在Linux或Mac上,基本上都安装好。试试看运行”php -m | grep PDO”这句话来查找一下~
php php -m | grep pdo
看到“PDO”就表示搞定!若还未好使,试试装个扩展。不会装?那就看看《PHP手册》咯~
安装这个PDO扩展其实不难,会用点命令行就成。新手可能会有点怕,没事儿的,照着学肯定可以。不怕,没啥不可能的!
建立数据库连接
要建立到MySQL数据库的连接,可以使用以下代码:
你知道么?MySQL链接字符串就像“mysql:localhost/testdb?charset=utf8”这种格式!它有三块重要信息哦:服务器地址、数据库名和编码类型,就跟我们熟悉的localhost、testdb还有utf8是差不多的。
$username = ‘root’;
$password = ‘password’;
try {
咱们先弄个PDO对象,叫它”数据库链接”,顺便给它添点儿名号啥的,比如命名空间啦、用户名啦、密码这种东西。
记好了要把$pdo调成”例外”形式,这样能快点发现错误!
} catch (PDOException $e) {
“连接失败:$e的信息来了。”
php -m | grep pdo
}
敲进几个关键词就行,比如服务器名字、数据库名字、端口号跟编码格式这些。再加上你的用户名和密码,连上后,就可以随心所欲地玩 SQL 了!
搞定PDO建设咱们的数据库才开始,不完成这一步可不行!要是连接失败了那就不能玩
执行查询
咱们拿这个小东西来说事,它能利用PDO愉快地查数据,最后吐出来的就是PDOS Statement。
$stmt=pdo->query(‘users’);
想看看结果吗?用下PDOStatement::fetchAll()呗,马上就能拿到一个所有细节都有的数组。
$users = PDO::FETCH_ASSOC;
$dsn = "mysql:host=localhost;dbname=your_database"; $username = "your_username"; $password = "your_password"; try { $conn = new PDO($dsn, $username, $password); $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); } catch (PDOException $e) { echo "连接失败: " . $e->getMessage(); die(); }
以下是一个使用PDO读取用户数据的简单命令行脚本:
exit;
foreach ($users as $user) {
你看这,用户 ID 跟名字就在这里: ‘.$ user[‘id’]. ‘, ‘.$user[‘name’].’n’;
?>
赶紧把这段指令粘贴进 user-list.php 那个文件里面去,接着在电脑上按几下键盘就能搞定!
“`bash
$stmt = $conn->query("SELECT * FROM users");
php user-list.php
搞定查寻,才能玩转PDO!这关系到咱们能否捞到底子数据。因此,在干这事之前,先确保你的SQL语句别出错哦;然后查查看数据库里面是不是真的有那些信息。
检索结果
最后一步用PDO查下啥玩意儿能从数据库弄出来就行!
$results = $stmt->fetchAll(PDO::FETCH_ASSOC); foreach ($results as $row) { print_r($row); }
如何在PHP命令行工具开发中使用数据库
在命令行工具开发中,访问数据库是常见的需求。
在命令行工具开发中使用数据库
在
setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $stmt = $conn->query("SELECT * FROM users"); $results = $stmt->fetchAll(PDO::FETCH_ASSOC); foreach ($results as $row) { echo "用户名: {$row['username']}, 邮箱: {$row['email']}" . PHP_EOL; } } catch (PDOException $e) { echo "错误: {$e->getMessage()}" . PHP_EOL; }
评论0