| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> PHP快速入门指南-基础篇三 -> 正文阅读 |
|
[大数据]PHP快速入门指南-基础篇三 |
一、前言????????本文是基础篇三,基础篇一:PHP快速入门指南-基础篇一_xiaopeng_code的博客-CSDN博客 基础篇二:PHP快速入门指南-基础篇二_xiaopeng_code的博客-CSDN博客?PHP是一门服务端脚本语言,具有开发效率高,易上手,适合新手学习和使用等特点。目前PHP的市场占有率还是挺高的,一线大厂、初创公司、站长、外包公司都能看到它的身影。不过受到Java、Go、Node.js的影响,市场占有率也有慢慢减少的趋势。 ????????本文将整理并总结重要的知识点,帮助大家快速了解并学习PHP脚本语言,快速上手PHP开发,本文为基础篇最后一篇。 ????????前面基础一、二篇文章我们讲解了PHP的基础语法,本篇我们来看看如何使用PHP来操作MySQL。后端开发主要就是和数据打交道,和数据打交道其实主要就是操作数据库,围绕着最基础的增删改查来完成复杂的业务。 二、数据库2.1 MySQL简介????????MySQL是非常快速、可靠、易于使用的免费软件,是目前最常用的数据库系统。我们可以通过PHP操作MySQL数据库,来实现我们的业务需求。下面我们来操作几个基本的添加数据库、添加数据表、增删改查操作。 2.2 连接数据库????????PHP可以使用MySQLi和PDO连接数据库,建议使用PDO连接,PDO支持不同的数据库类型,如果使用过程中切换数据库则只需改动部分语句。 1.本地开发环境需要安装MySQL。 2.使用MySQLi需要先安装扩展:PHP: Installation - Manual 使用PDO需要先安装扩展:PHP: Installation - Manual 可以通过输出phpinfo()函数来查看是否安装成功。示例: <?php $serverName = '127.0.0.1';//连接地址 $userName = 'root';//数据库名 $password = '123456';数据库密码 //MySQLi连接 $conn = new mysqli($serverName, $userName, $password); if ($conn->connect_error) { die('连接失败,原因: ' . $conn->connect_error); } echo '连接成功'; //PDO连接 try { $conn = new PDO("mysql:host=$serverName;", $userName, $password); echo "连接成功"; } catch (PDOException $e) { echo '连接失败,原因: ' . $e->getMessage(); } ?> 2.3 创建数据库????????CREATE DATABASE语句用于在 MySQL中创建数据库,我们试着创建一个名称叫DemoDatabase的数据库。示例: <?php $serverName = '127.0.0.1';//连接地址 $userName = 'root';//数据库名 $password = '123456';数据库密码 //创建数据库 try { $conn = new PDO("mysql:host=$serverName;", $userName, $password); //设置错误模式为异常 $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $sql = "CREATE DATABASE DemoDatabase"; $conn->exec($sql); echo '数据库创建成功'; } catch (PDOException $e) { echo '创建失败,原因: ' . $e->getMessage(); } ?> 2.4 创建数据表????????CREATE TABLE语句用于创建MySQL表,我们使用DemoDatabase数据库,来创建一张teacher表。示例: CREATE TABLE `teacher` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `name` char(50) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '老师名称', `age` int(11) NOT NULL DEFAULT '0' COMMENT '年龄', `create_time` int(11) NOT NULL DEFAULT '0' COMMENT '创建时间', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci; <?php $serverName = '127.0.0.1'; $userName = 'root'; $password = '123456'; $dbName = 'DemoDatabase'; //创建数据表 try { $conn = new PDO("mysql:host=$serverName;dbname=$dbName", $userName, $password); $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $sql = "CREATE TABLE `teacher` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `name` char(50) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '老师名称', `age` int(11) NOT NULL DEFAULT '0' COMMENT '年龄', `create_time` int(11) NOT NULL DEFAULT '0' COMMENT '创建时间', PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci"; $conn->exec($sql); echo "创建数据表成功"; } catch (PDOException $e) { echo '创建数据表失败,原因: ' . $e->getMessage(); } ?> 2.5 添加数据????????我们创建完数据库和数据表后就可以给老师表添加数据了,使用INSERT语句,可以添加一条数据,也可以开启事务,一次添加多条数据,添加过程中失败则会回滚事务,之前添加过的数据不会存在数据表中。示例: <?php $serverName = '127.0.0.1'; $userName = 'root'; $password = '123456'; $dbName = 'DemoDatabase'; //添加数据 try { $conn = new PDO("mysql:host=$serverName;dbname=$dbName", $userName, $password); $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $sql = "INSERT INTO teacher ( `name`, age ) VALUES ( '张三', 18 );"; $conn->exec($sql); echo "添加数据成功"; } catch (PDOException $e) { echo '添加数据失败,原因: ' . $e->getMessage(); } //添加多条数据 try { $conn = new PDO("mysql:host=$serverName;dbname=$dbName", $userName, $password); $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); //开始事务 $conn->beginTransaction(); $conn->exec("INSERT INTO teacher ( `name`, age ) VALUES ( '张三', 18 )"); $conn->exec("INSERT INTO teacher ( `name`, age ) VALUES ( '李四', 18 )"); $conn->exec("INSERT INTO teacher ( `name`, age ) VALUES ( '王五', 18 )"); //提交事务 $conn->commit(); echo "添加数据成功"; } catch (PDOException $e) { echo '添加数据失败,原因: ' . $e->getMessage(); } ?> 2.6 删除数据????????我们使用DELETE语句来删除指定条件的数据,记得带上WHERE条件,否则数据表记录都会被删除。示例: <?php $serverName = '127.0.0.1'; $userName = 'root'; $password = '123456'; $dbName = 'DemoDatabase'; //删除数据 try { $conn = new PDO("mysql:host=$serverName;dbname=$dbName", $userName, $password); $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $result = $conn->exec('DELETE FROM teacher WHERE id = 1'); if ($result) { echo '删除数据成功'; } else { echo '删除数据失败'; } } catch (PDOException $e) { echo '删除数据失败,原因: ' . $e->getMessage(); } ?> 2.7 更新数据????????我们使用UPDATE语句来更新数据内容,记得带上WHERE条件,否则数据表记录都会被更新。示例: <?php $serverName = '127.0.0.1'; $userName = 'root'; $password = '123456'; $dbName = 'DemoDatabase'; //更新数据 try { $conn = new PDO("mysql:host=$serverName;dbname=$dbName", $userName, $password); $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $result = $conn->exec('UPDATE teacher SET age = 30 WHERE id = 1'); if ($result) { echo '更新数据成功'; } else { echo '更新数据失败'; } } catch (PDOException $e) { echo '更新数据失败,原因: ' . $e->getMessage(); } ?> 2.6 查询数据????????添加完数据后,我们通过SELECT语句读取所有的数据列表,也可以使用where条件,和原声SQL编写的方式一致,示例: <?php $serverName = '127.0.0.1'; $userName = 'root'; $password = '123456'; $dbName = 'DemoDatabase'; //查询数据 try { $conn = new PDO("mysql:host=$serverName;dbname=$dbName", $userName, $password); $conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); $result = $conn->prepare('SELECT * FROM teacher'); $result->execute(); $result->setFetchMode(PDO::FETCH_ASSOC); $list = $result->fetchAll(); var_dump($list); } catch (PDOException $e) { echo '查询数据失败,原因: ' . $e->getMessage(); } ?> 三、结束????????基础篇知识点编写完毕啦,有许多详细的知识点,可以在使用的过程中学习并使用,相信很快就能上手该编程语言。 ????????参考资料:官方文档: https://www.php.net/manual/zh 菜鸟教程:https://www.runoob.com/php ????????感谢阅读,第三篇幅就到这里吧,我们下次再见。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 12:54:09- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |