ホームページ > バックエンド開発 > PHPチュートリアル > PHP と MySQL は JSON 内の文字列データをどのように処理しますか?

PHP と MySQL は JSON 内の文字列データをどのように処理しますか?

WBOY
リリース: 2023-07-12 12:34:01
オリジナル
1581 人が閲覧しました

PHP と MySQL は JSON 内の文字列データをどのように処理しますか?

インターネットの急速な発展に伴い、データの送信と処理はすべてのプログラマーの日常業務になりました。その中でも、JSON (JavaScript Object Notation) の処理は非常に一般的なタスクの 1 つです。 JSON は、フロントエンドとバックエンドのデータ送信と保存に広く使用されている軽量のデータ交換形式です。

PHP と MySQL では、JSON での文字列データの処理は非常に一般的な要件の 1 つです。この記事では、PHPとMySQLでJSONの文字列データを処理する方法を紹介します。

1. PHP は JSON の文字列データを処理します

PHP では、組み込み関数 json_decode() を使用して、JSON 文字列を PHP オブジェクトに変換するか、連想配列。以下に例を示します。

<?php
$json = '{"name":"Tom","age":25,"email":"tom@example.com"}';
$data = json_decode($json);

echo $data->name;  // 输出:Tom
echo $data->age;   // 输出:25
echo $data->email; // 输出:tom@example.com
?>
ログイン後にコピー

上記の例では、JSON 文字列を PHP オブジェクトにデコードし、矢印演算子 -> を使用してオブジェクトのプロパティにアクセスします。 JSON を連想配列にデコードしたい場合は、次のように json_decode() の 2 番目のパラメータを true に設定します。

<?php
$json = '{"name":"Tom","age":25,"email":"tom@example.com"}';
$data = json_decode($json, true);

echo $data['name'];  // 输出:Tom
echo $data['age'];   // 输出:25
echo $data['email']; // 输出:tom@example.com
?>
ログイン後にコピー

JSON をデコードするだけでなく、 String の場合、PHP は json_encode() 関数を使用して、PHP オブジェクトまたは配列を JSON 文字列にエンコードすることもできます。以下に例を示します。

<?php
$data = [
    'name' => 'Tom',
    'age' => 25,
    'email' => 'tom@example.com'
];
$json = json_encode($data);

echo $json;  // 输出:{"name":"Tom","age":25,"email":"tom@example.com"}
?>
ログイン後にコピー

上記の例では、連想配列を JSON 文字列にエンコードし、echo ステートメントを使用して出力します。

2. MySQL は JSON で文字列データを処理します

MySQL 5.7 以降のバージョンでは、JSON データを直接保存および処理できる JSON タイプが導入されました。以下に例を示します。

CREATE TABLE users (
    id INT AUTO_INCREMENT PRIMARY KEY,
    data JSON
);

INSERT INTO users (data) VALUES ('{"name":"Tom","age":25,"email":"tom@example.com"}');

SELECT data->'$.name' AS name, data->'$.age' AS age, data->'$.email' AS email FROM users;
ログイン後にコピー

上の例では、users という名前のテーブルを作成しました。このテーブルには、JSON 型の data 列があります。次に、JSON データを含むレコードを挿入し、SELECT ステートメントを使用してプロパティをクエリしました。

MySQL では、-> 演算子を使用して JSON データのプロパティにアクセスできます。 #$ 記号はルート要素を表し、それに続くピリオド . と引用符 '' は属性パスを表します。 JSON_EXTRACT() 関数を使用して属性値を抽出することもできます。

SELECT JSON_EXTRACT(data, '$.name') AS name, JSON_EXTRACT(data, '$.age') AS age, JSON_EXTRACT(data, '$.email') AS email FROM users;
ログイン後にコピー
上記のコードは、MySQL で JSON データの属性を抽出するのに役立ちます。

概要

この記事では、PHP と MySQL で JSON の文字列データを処理する方法を紹介します。 PHP では、

json_decode() を使用して JSON 文字列を PHP オブジェクトまたは配列にデコードし、次に json_encode() を使用して PHP オブジェクトまたは配列を JSON 文字列にエンコードできます。 。 MySQL では、-> 演算子を使用して JSON データの属性に直接アクセスすることも、JSON_EXTRACT() 関数を使用して属性値を抽出することもできます。

この記事が、PHP と MySQL を理解し、JSON データを処理するために適用するのに役立つことを願っています。

以上がPHP と MySQL は JSON 内の文字列データをどのように処理しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート