> 백엔드 개발 > PHP 튜토리얼 > PHP가 PDO 추상화 계층을 사용하여 쿼리 결과를 얻는 방법의 예

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

jacklove
풀어 주다: 2023-04-01 19:22:01
원래의
1599명이 탐색했습니다.

이 글에서는 주로 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

관심을 가질 만한 기사:

🎜이미지 크기를 압축하고 jpg 형식으로 변환하는 PHP 방법의 예_php Tips🎜🎜🎜🎜🎜search_php 도중 상태를 기억하는 방법의 PHP 예 Tips🎜🎜🎜🎜🎜laravel 프로젝트는 twemproxy를 사용하여 전체 Redis 클러스터를 배포합니다. Step php example ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ 🎜🎜🎜

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

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