PHP가 PDO 추상화 계층을 사용하여 쿼리 결과를 얻는 방법

不言
풀어 주다: 2023-03-29 07:14:01
원래의
1531명이 탐색했습니다.

이 글에서는 주로 PDO 추상화 계층을 사용하여 쿼리 결과를 얻는 방법을 소개합니다. PDO 추상화 계층을 사용하여 쿼리 결과를 얻는 세 가지 일반적인 방법과 관련 기능 사용 기술을 예제 형식으로 분석합니다.

이 기사의 예에서는 PHP가 PDO 추상화 계층을 사용하여 쿼리 결과를 얻는 방법을 설명합니다. 참조용으로 모든 사람과 공유하세요. 세부 사항은 다음과 같습니다.

PHP는 PDO 추상화 계층을 사용하여 쿼리 결과를 얻습니다.

(1) PDO::query() 쿼리.

다음 PHP 코드를 보세요:

<?php
//PDO::query()查询
$psql="SELECT * FROM user";
$res = $db->query($psql);
$res->setFetchMode(PDO::FETCH_NUM); //数字索引方式
while ($row = $res->fetch()){
print_r($row);
}
?>
로그인 후 복사

(2) PDO->exec() 처리 sql

<?php
//PDO->exec()处理sql
$psql="INSERT INTO user(id , username) values(&#39;&#39; , &#39;张三&#39;)";
$db->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$res = $db->exec($psql);
echo $res;
?>
로그인 후 복사

(3) PDO::prepare() 전처리 실행 query

<?php
//PDO::prepare()预处理执行查询
$psql="SELECT * FROM user";
$res = $db->prepare($psql);
$res->execute();
while ($row = $res->fetchAll()) {
print_r($row);
}
?>
로그인 후 복사

setAttribute() 속성을 ​​설정하는 방법입니다. 공통 매개변수는 다음과 같습니다. setAttribute() 方法是设置属性,常用参数如下:

PDO::CASE_LOWER -- 强制列名是小写
PDO::CASE_NATURAL -- 列名按照原始的方式
PDO::CASE_UPPER -- 强制列名为大写

setFetchMode方法来设置获取结果集的返回值的类型,常用参数如下:

PDO::FETCH_ASSOC -- 关联数组形式
PDO::FETCH_NUM -- 数字索引数组形式
PDO::FETCH_BOTH -- 两者数组形式都有,这是默认的
PDO::FETCH_OBJ -- 按照对象的形式,类似于以前的 mysql_fetch_object()

对上面总结如下:

查询操作主要是PDO::query()PDO::exec()PDO::prepare()

PDO->query() — 处理一条SQL语句,并返回一个“PDOStatement”
PDO->exec() — 处理一条SQL语句,并返回所影响的条目数

PDO::prepare()主要是预处理操作,需要通过$rs->execute()来执行预处理里面的SQL语句

最后介绍两个常用的函数:

(1)fetchColumn()获取指定记录里一个字段结果,默认是第一个字段!

<?php
$psql="SELECT * FROM user";
$res = $db->query($psql);
//获取指定记录里第二个字段结果
$col = $res->fetchColumn(1);
echo $col;
?>
로그인 후 복사

(2)fetchAll()

PDO::CASE_LOWER

-- 열 이름을 소문자로 강제 적용

PDO::CASE_NATURAL

-- 열 이름은 원래 방식입니다

PDO:: CASE_UPPER

- 필수 열 이름은 대문자입니다. 결과 세트를 얻기 위한 반환 값 유형을 설정하는

setFetchMode 메소드 공통 매개변수는 다음과 같습니다.
PDO::FETCH_ASSOC

-- 연관 배열 형식

PDO::FETCH_NUM

-- 숫자 인덱스 배열 형식

PDO::FETCH_BOTH -- 두 배열 모두 형태가 있으며, 이것이 기본값입니다. PDO::FETCH_OBJ

-- 객체의 형태에 따르면 다음과 유사합니다. 이전 mysql_fetch_object()🎜🎜🎜위 내용을 요약하면 다음과 같습니다. 🎜🎜🎜 쿼리 작업은 주로 PDO::query(), PDO::exec(), PDO::prepare(). 🎜🎜PDO->query() — SQL 문을 처리하고 "PDOStatement"를 반환합니다. 🎜PDO->exec() — SQL 문을 처리하고 반환합니다. 영향을 받는 항목 수🎜🎜🎜PDO::prepare()는 주로 전처리 작업이며 전처리에서 SQL 문을 실행하려면 $rs->execute()를 사용해야 합니다🎜🎜 🎜마지막으로 일반적으로 사용되는 두 가지 기능을 소개합니다: 🎜🎜🎜 (1) fetchColumn() 지정된 레코드의 필드 결과를 가져옵니다. 기본값은 첫 번째 필드입니다! 🎜🎜🎜
<?php
$psql="SELECT * FROM user";
$res = $db->query($psql);
$res_arr =$res->fetchAll();
print_r($res_arr);
?>
로그인 후 복사
🎜🎜🎜 (2) fetchAll() 결과 집합에서 데이터를 가져와서 연관 배열에 저장합니다. 🎜🎜🎜rrreee🎜🎜🎜🎜🎜관련 권장 사항: 🎜🎜🎜PHP 기반 pdo의 데이터베이스 작업 클래스 [mysql, sqlserver 및 oracle 지원 가능]🎜🎜🎜🎜🎜🎜🎜🎜🎜

위 내용은 PHP가 PDO 추상화 계층을 사용하여 쿼리 결과를 얻는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!