> 백엔드 개발 > PHP 문제 > PHP에서 결과를 쿼리하고 json 배열을 반환하는 방법

PHP에서 결과를 쿼리하고 json 배열을 반환하는 방법

PHPz
풀어 주다: 2023-04-18 13:42:14
원래의
1022명이 탐색했습니다.

웹 개발 과정에서 데이터베이스 작업과 쿼리를 수행하기 위해 PHP를 사용해야 하는 경우가 종종 있습니다. 프런트 엔드에 표시해야 하는 일부 데이터의 경우 일반적으로 구문 분석을 용이하게 하고 프런트 엔드에 표시하기 위해 쿼리 결과를 JSON 형식으로 변환합니다. 이번 글에서는 PHP를 통해 데이터베이스 데이터를 쿼리하고 그 결과를 JSON 배열로 변환하여 반환하는 방법을 소개하겠습니다.

1. 데이터베이스 데이터 쿼리

먼저 PHP를 통해 데이터베이스에 연결하고 쿼리문을 실행하여 필요한 데이터를 얻어야 합니다. 다음은 간단한 샘플 코드입니다.

<?php

// 连接数据库
$dsn = &#39;mysql:host=localhost;dbname=test;charset=utf8&#39;;
$username = &#39;用户名&#39;;
$password = &#39;密码&#39;;
$dbh = new PDO($dsn, $username, $password);

// 查询数据
$stmt = $dbh->query('SELECT id, name, age FROM users');
$data = $stmt->fetchAll(PDO::FETCH_ASSOC);

?>
로그인 후 복사

위 코드에서는 PDO를 사용하여 데이터베이스에 연결하고 쿼리문을 실행하여 모든 사용자의 ID, 이름, 나이를 가져옵니다. $data 변수는 쿼리 결과를 저장합니다.

2. JSON 배열로 변환

다음으로 쿼리 결과를 JSON 형식의 배열로 변환해야 합니다. PHP는 배열을 JSON 형식 문자열로 변환할 수 있는 매우 편리한 함수 json_encode()를 제공합니다. 반환해야 하는 데이터의 경우 JSON 문자열로 변환하고 header() 함수를 통해 Content-Type 헤더를 설정하고 반환된 데이터가 JSON 데이터임을 브라우저에 알리고 마지막으로 JSON 문자열을 다음을 통해 변환하면 됩니다. echo() 함수만 출력합니다. 샘플 코드는 다음과 같습니다.

<?php

// 连接数据库
$dsn = &#39;mysql:host=localhost;dbname=test;charset=utf8&#39;;
$username = &#39;用户名&#39;;
$password = &#39;密码&#39;;
$dbh = new PDO($dsn, $username, $password);

// 查询数据
$stmt = $dbh->query('SELECT id, name, age FROM users');
$data = $stmt->fetchAll(PDO::FETCH_ASSOC);

// 转换成JSON格式并输出
header('Content-Type: application/json; charset=utf-8');
echo json_encode($data);

?>
로그인 후 복사

위 코드를 통해 쿼리 결과를 JSON 형식으로 변환하고 브라우저에 성공적으로 반환했습니다.

요약:

웹 개발에서 데이터베이스 쿼리 결과를 JSON 형식의 배열로 변환하는 것은 매우 일반적인 작업입니다. PHP에서 제공하는 json_encode() 함수를 통해 배열을 JSON 형식 문자열로 쉽게 변환하고, Content-Type 헤더를 설정하여 JSON 데이터를 반환한다는 것을 브라우저에 알릴 수 있습니다. 위 내용은 이 글의 내용입니다. 모든 분들께 도움이 되었으면 좋겠습니다.

위 내용은 PHP에서 결과를 쿼리하고 json 배열을 반환하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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