>  기사  >  백엔드 개발  >  PHP와 MySQL을 사용하여 외부 API에서 JSON 데이터를 얻는 방법은 무엇입니까?

PHP와 MySQL을 사용하여 외부 API에서 JSON 데이터를 얻는 방법은 무엇입니까?

王林
王林원래의
2023-07-15 15:41:001698검색

PHP와 MySQL을 사용하여 외부 API에서 JSON 데이터를 얻는 방법은 무엇입니까?

현대 애플리케이션 개발에서는 외부 API(애플리케이션 프로그래밍 인터페이스)에서 제공하는 데이터를 획득하고 처리하는 것이 점점 더 일반화되었습니다. API는 서로 다른 소프트웨어 간에 데이터를 교환하는 데 사용되는 기술로, 이를 통해 개발자는 다른 애플리케이션이나 서비스의 기능에 액세스하고 활용할 수 있습니다. 그 중 JSON(JavaScript Object Notation)은 구조화된 데이터를 전송하는데 흔히 사용되는 데이터 포맷이다.

이 기사에서는 PHP 및 MySQL을 사용하여 외부 API에서 JSON 데이터를 가져오고 처리하는 방법을 알아봅니다. 특히, 우리는 이 기능을 구현하기 위해 PHP의 내장 기능과 MySQL의 데이터베이스를 사용할 것입니다.

  1. 데이터베이스 테이블 생성

먼저 외부 API에서 얻은 JSON 데이터를 저장하기 위해 MySQL 데이터베이스에 테이블을 생성해야 합니다. 다음 SQL 문을 사용하여 "json_data"라는 테이블을 생성할 수 있습니다.

CREATE TABLE json_data (
    id INT AUTO_INCREMENT PRIMARY KEY,
    data TEXT,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

이 테이블에는 3개의 필드가 있습니다. id는 자동 증가 기본 키이고, data는 JSON 데이터를 저장하는 데 사용되는 텍스트 유형 필드이며,created_at는 사용됩니다. for records 데이터 삽입 시간에 대한 타임스탬프 필드입니다.

  1. JSON 데이터 가져오기

다음으로 PHP를 사용하여 외부 API에서 반환된 JSON 데이터를 가져오는 코드를 작성하겠습니다. "example_api"라는 API에서 데이터를 가져오려고 한다고 가정하면 다음 코드를 사용할 수 있습니다.

$api_url = "https://example_api.com/data";  // API的URL
$json_data = file_get_contents($api_url);  // 从API获取JSON数据

이 예에서는 PHP의 file_get_contents 함수를 사용하여 지정된 URL에서 데이터를 가져옵니다. 일반적으로 API는 $json_data 변수에 저장할 수 있는 JSON 형식의 문자열을 반환합니다.

  1. JSON 데이터 구문 분석 및 처리

JSON 데이터를 얻은 후에는 이를 구문 분석하고 처리해야 합니다. PHP는 json_decode 및 json_encode와 같은 JSON 데이터를 조작하기 위한 몇 가지 내장 함수를 제공합니다.

$data = json_decode($json_data, true);  // 将JSON字符串解析为PHP数组

// 处理JSON数据
foreach ($data as $item) {
    $value1 = $item['field1'];
    $value2 = $item['field2'];
    
    // 将数据插入数据库表
    $sql = "INSERT INTO json_data (data) VALUES ('$json_data')";
    $result = mysqli_query($conn, $sql);
}

이 예에서는 json_decode 함수를 사용하여 JSON 문자열을 PHP 배열로 구문 분석합니다. 그런 다음 PHP 배열을 사용하여 JSON의 필드와 값에 액세스할 수 있습니다.

데이터베이스 테이블에 데이터를 삽입하는 부분에 주목하세요. 간단한 SQL 삽입 문을 사용하여 JSON 데이터를 "json_data" 테이블에 삽입했습니다.

  1. MySQL 데이터베이스에 연결

MySQL 데이터베이스에 데이터를 삽입하려면 먼저 데이터베이스에 대한 연결을 설정해야 합니다. 이는 PHP의 mysqli 함수를 사용하여 달성할 수 있습니다.

$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";

$conn = mysqli_connect($servername, $username, $password, $dbname);

// 检查连接是否成功
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}

이 예제에서는 데이터베이스의 연결 정보를 변수에 넣고 mysqli_connect 함수를 사용하여 데이터베이스에 연결합니다. 연결에 실패하면 오류 메시지가 출력됩니다.

  1. 전체 샘플 코드

아래는 외부 API에서 JSON 데이터를 가져와서 PHP 및 MySQL을 사용하여 데이터베이스에 저장하는 방법을 보여주는 전체 샘플 코드입니다.

$api_url = "https://example_api.com/data";  // API的URL
$json_data = file_get_contents($api_url);  // 从API获取JSON数据

$data = json_decode($json_data, true);  // 将JSON字符串解析为PHP数组

$servername = "localhost";
$username = "your_username";
$password = "your_password";
$dbname = "your_database";

$conn = mysqli_connect($servername, $username, $password, $dbname);

// 检查连接是否成功
if (!$conn) {
    die("Connection failed: " . mysqli_connect_error());
}

// 处理JSON数据并将其插入数据库表
foreach ($data as $item) {
    $value1 = $item['field1'];
    $value2 = $item['field2'];
    
    $sql = "INSERT INTO json_data (data) VALUES ('$json_data')";
    $result = mysqli_query($conn, $sql);
}

// 关闭数据库连接
mysqli_close($conn);

이것은 단지 샘플 코드일 뿐이라는 점에 유의하세요. 실제 상황에 따라 수정 및 조정이 필요할 수 있습니다. 예를 들어 실제 API 요구 사항을 기반으로 URL에 매개변수를 추가해야 하거나 인증을 위해 API 키를 사용해야 할 수도 있습니다.

요약

이 문서에서는 PHP 및 MySQL을 사용하여 외부 API에서 JSON 데이터를 얻는 방법에 대한 기본 단계를 소개합니다. JSON 데이터를 구문 분석하고 이를 MySQL 데이터베이스에 저장함으로써 외부 API에서 제공하는 구조화된 데이터를 쉽게 얻고 처리할 수 있습니다. 이 기사가 도움이 되기를 바랍니다!

위 내용은 PHP와 MySQL을 사용하여 외부 API에서 JSON 데이터를 얻는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.