PHP PDO는 PHP의 확장으로, PHP 개발자에게 데이터베이스를 작동하는 표준화된 방법을 제공하여 개발자가 서로 다른 데이터베이스 간에 원활하게 전환할 수 있도록 합니다. 이 기사에서는 PHP PDO를 사용하여 MySQL 데이터베이스에 연결하고 코드를 추가, 삭제, 수정 및 확인하는 예제를 작성하는 방법을 보여줍니다.
PDO 확장 설치
시작하기 전에 PHP 환경에 PDO 확장이 설치되어 있는지 확인하세요. 터미널에서 다음 명령어를 실행하면 현재 환경에 PDO가 이미 설치되어 있는지 확인할 수 있습니다.
php -m | grep pdo
오류 메시지가 표시되지 않으면 PDO가 성공적으로 설치된 것입니다. 프롬프트에서 PDO 확장을 찾지 못하면 운영 체제 및 PHP 버전에 따라 해당 버전의 PDO를 설치하십시오.
MySQL 데이터베이스에 연결
시연에 앞서 먼저 로컬에서 MySQL 데이터베이스를 생성하고 test라는 이름의 새 데이터 테이블을 생성해야 합니다. 동시에 데이터베이스에 연결하기 위해서는 데이터베이스 이름, 사용자 이름, 비밀번호 등 연결에 필요한 정보를 준비해야 합니다. 연결 코드는 다음과 같습니다.
$dbname = 'test'; $username = 'root'; $password = ''; $dsn = "mysql:host=localhost;dbname=$dbname;charset=utf8"; try { $pdo = new PDO($dsn, $username, $password); echo "连接成功"; } catch(PDOException $e) { echo $e->getMessage(); }
설명:
dbname
은 데이터베이스 이름이며 실제 상황에 따라 수정될 수 있습니다. dbname
是数据库名称,可以根据实际情况修改;username
和 password
是访问数据库的用户名和密码,根据实际情况进行修改;dsn
是 PDO 连接 MySQL 数据库所必需的参数,其中 mysql:host=localhost
是 MySQL 的主机名,dbname=$dbname
是数据库名称,charset=utf8
是字符集,确保我们的数据在传输过程中不会出现乱码的情况。如果连接成功,页面将会输出“连接成功”。
获取数据
接下来,我们将演示如何使用 PDO 获取数据库中的数据。代码如下:
$sql = "SELECT * FROM test"; $stmt = $pdo->query($sql); while ($row = $stmt->fetch()) { echo $row['id'] . ' ' . $row['name'] . ' ' . $row['age'] . "<br>"; }
说明:
SELECT * FROM test
是SQL语句,其中test是我们创建的数据表名;$stmt
是 PDO 执行 SQL 语句后返回的结果集对象;$stmt->fetch()
用于获取结果集中的一条数据,每次执行完该方法后,$stmt
中将指向下一条数据;while
循环用于遍历所有符合条件的数据记录,直到结果集中没有数据为止。添加数据
接下来,我们将演示如何使用 PDO 向数据库中添加数据。代码如下:
$name = 'Tom'; $age = 28; $sql = "INSERT INTO test(name,age) VALUES(:name,:age)"; $stmt = $pdo->prepare($sql); $stmt->bindValue(':name', $name); $stmt->bindValue(':age', $age); $result = $stmt->execute(); if ($result) { echo "数据插入成功"; } else { echo "数据插入失败"; }
说明:
INSERT INTO
是 SQL 语句,用于向数据表中插入新的数据;:name
和 :age
是 PDO 参数绑定的占位符,将在后面的代码中被替换成真正的值;$pdo->prepare($sql)
用于为 SQL 语句预处理,这里的 $sql
就是要执行的 SQL 语句;$stmt->bindValue(':name', $name)
将占位符 :name
绑定到具体的值 $name
;$result = $stmt->execute()
执行 SQL 语句,并将执行结果返回。更新数据
接下来,我们将演示如何使用 PDO 更新数据库中的数据。代码如下:
$id = 1; $name = 'John'; $age = 30; $sql = "UPDATE test SET name=:name,age=:age WHERE id=:id"; $stmt = $pdo->prepare($sql); $stmt->bindValue(':name', $name); $stmt->bindValue(':age', $age); $stmt->bindValue(':id', $id); $result = $stmt->execute(); if ($result) { echo "数据更新成功"; } else { echo "数据更新失败"; }
说明:
UPDATE
是 SQL 语句,用于更新数据表中的数据;SET name=:name,age=:age
表示要更新的字段和对应的值;WHERE id=:id
表示要更新的数据的条件;$stmt->bindValue(':id', $id)
将占位符 :id
绑定到具体的值 $id
。删除数据
最后,我们将演示如何使用 PDO 删除数据库中的数据。代码如下:
$id = 1; $sql = "DELETE FROM test WHERE id=:id"; $stmt = $pdo->prepare($sql); $stmt->bindValue(':id', $id); $result = $stmt->execute(); if ($result) { echo "数据删除成功"; } else { echo "数据删除失败"; }
说明:
DELETE FROM
是 SQL 语句,用于从数据表中删除数据;WHERE id=:id
表示要删除的数据的条件;$stmt->bindValue(':id', $id)
将占位符 :id
绑定到具体的值 $id
username
및 password는 데이터베이스에 접속하기 위한 사용자 이름과 비밀번호를 실제 상황에 맞게 수정해야 합니다. dsn
은 PDO가 MySQL 데이터베이스에 연결하는 데 필요한 매개변수입니다. mysql:host=localhost
는 MySQL 이름의 호스트이고, dbname=$dbname
은 데이터베이스 이름이고, charset=utf8
은 문자 집합입니다. 전송 중에 데이터가 왜곡되지 않도록 보장합니다.
SELECT * FROM test
는 SQL 문입니다. 여기서 test는 우리가 만든 데이터 테이블의 이름입니다. /code>는 PDO 실행입니다. SQL 문 🎜🎜$stmt->fetch()
후에 반환된 결과 집합 개체는 각 실행 후 결과 집합의 데이터 조각을 가져오는 데 사용됩니다. 이 메서드, $stmt
code>는 데이터의 다음 부분을 가리킵니다. 🎜🎜while
루프는 데이터가 없을 때까지 조건을 충족하는 모든 데이터 레코드를 탐색하는 데 사용됩니다. 결과 세트에서. 🎜🎜🎜🎜데이터 추가🎜🎜🎜다음으로 PDO를 사용하여 데이터베이스에 데이터를 추가하는 방법을 보여 드리겠습니다. 코드는 다음과 같습니다. 🎜rrreee🎜설명: 🎜🎜🎜INSERT INTO
는 데이터 테이블에 새 데이터를 삽입하는 데 사용되는 SQL 문입니다. 🎜🎜:name
및 :age는 PDO 매개변수 바인딩을 위한 자리 표시자이며, 다음 코드에서 실제 값으로 대체됩니다. 🎜🎜$pdo->prepare($sql)
가 사용됩니다. SQL 문에 대한 전처리, 여기서 $sql
는 실행할 SQL 문입니다. 🎜🎜$stmt->bindValue(':name', $name)
는 비트 문자 :name
은 특정 값 $name
에 바인딩됩니다. 🎜🎜$result = $stmt->execute()
는 SQL을 실행합니다. 문을 실행하고 실행 결과를 반환합니다. 🎜🎜🎜🎜데이터 업데이트🎜🎜🎜다음으로 PDO를 사용하여 데이터베이스의 데이터를 업데이트하는 방법을 보여 드리겠습니다. 코드는 다음과 같습니다. 🎜rrreee🎜설명: 🎜🎜🎜UPDATE
는 데이터 테이블의 데이터를 업데이트하는 데 사용되는 SQL 문입니다. 🎜🎜SET name=:name,age=: age
는 업데이트할 필드를 나타내고 해당 값 🎜🎜WHERE id=:id
는 업데이트할 데이터의 조건을 나타냅니다. binValue(':id', $id) 자리 표시자 :id
를 특정 값 $id
에 바인딩합니다. 🎜🎜🎜🎜데이터 삭제🎜🎜🎜마지막으로 PDO를 사용하여 데이터베이스의 데이터를 삭제하는 방법을 보여드리겠습니다. 코드는 다음과 같습니다. 🎜rrreee🎜설명: 🎜🎜🎜DELETE FROM
은 데이터 테이블에서 데이터를 삭제하는 데 사용되는 SQL 문입니다. 🎜🎜WHERE id=:id
데이터에 대한 조건 삭제를 의미합니다. 🎜🎜$stmt->bindValue(':id', $id)
자리 표시자 :id
를 특정 값 $에 바인딩합니다. 아이디
. 🎜🎜🎜🎜요약🎜🎜🎜위는 PHP PDO를 사용하여 MySQL 데이터베이스를 추가, 삭제, 수정, 쿼리하는 예제입니다. 이 예제를 통해 모두가 PDO를 사용하여 데이터베이스에 연결하고 데이터에 관련 작업을 수행하는 방법을 마스터했다고 믿습니다. 실제 프로젝트에서는 다른 PHP 프레임워크와 구성요소를 결합하여 복잡한 비즈니스 로직을 빠르게 개발할 수도 있습니다. 🎜위 내용은 [공유예시] PHP PDO 연산 데이터베이스(추가, 삭제, 수정, 확인)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!