フロントエンド テクノロジーの継続的な発展に伴い、フロントエンドとバックエンドの分離が徐々にトレンドになってきました。フロントエンドとバックエンドを分離したアーキテクチャ設計では、フロントエンドはAPIを通じてバックエンドにデータを要求する必要がありますが、その際、フロントエンドはJavaScriptを通じてデータを操作する必要があるため、データ形式は2 つの間の変換が必要です。フロントエンドとバックエンドの分離の開発では、サーバーサイドプログラミング言語としての PHP は、多くの場合、PHP 配列を JavaScript オブジェクト配列オブジェクトに変換する機能を実装する必要があります。この記事では、PHP 配列を JS オブジェクト配列オブジェクトに変換する方法を説明します。
1. PHP 配列
PHP は HTML ページを生成できるサーバーサイド プログラミング言語ですが、さまざまな変数タイプの使用も非常に柔軟です。配列は PHP で最も一般的に使用されるデータ構造の 1 つであり、PHP 配列を JS オブジェクト配列オブジェクトに変換するための重要な前提条件でもあります。
PHP 配列は次の方法で宣言できます:
$arr = array("name"=>"Jack","age"=>"22");
ここでは、$arr
という名前の PHP 配列を定義し、それを ## の連想配列を含む配列に初期化します。 #name 要素と
age 要素。このうち、
nameと
ageはそれぞれ配列要素のキーであり、
"Jack"と
"22"は値です配列要素の。
var_dump() 関数を使用して配列の構造を表示できます:
var_dump($arr);出力結果は次のとおりです:
array(2) { ["name"]=> string(4) "Jack" ["age"]=> string(2) "22" }ご覧のとおり、
var_dump() 要素のキーと値を含む配列
$arr の構造が出力されます。
function
json_encode() 関数は PHP 配列を JSON 文字列に変換でき、JSON 文字列は JavaScript で直接解析できます。したがって、この方法は最も一般的であり、最も簡単な方法の 1 つです。
$arr = array("name"=>"Jack","age"=>"22"); $jsonStr = json_encode($arr); echo $jsonStr;このコードの出力結果は次のとおりです:
{"name":"Jack","age":"22"}ご覧のとおり、PHP 配列
$arr を変換しました。 を JSON 文字列に変換します。
name と
age は配列要素のキーに対応し、
"Jack" と
"22" 配列要素の値に対応します。
JSON.parse() 関数を使用してオブジェクト配列オブジェクトに変換します。
var objArr = JSON.parse('{"name":"Jack","age":"22"}'); console.log(objArr);出力結果は次のとおりです。
{name: "Jack", age: "22"}ご覧のとおり、PHP 配列
$arr を JavaScript オブジェクト配列オブジェクトに正常に変換しました。
関数と
unserialize() 関数を使用します。
は PHP です。組み込みのシリアル化関数は、PHP 配列を文字列にシリアル化できます。 unserialize()
この関数は、シリアル化された文字列を PHP 値に復元できます。 サンプル コードは次のとおりです:
$arr = array("name"=>"Jack","age"=>"22"); $str = serialize($arr); $objArr = unserialize($str); print_r($objArr);
出力結果は次のとおりです:
Array ( [name] => Jack [age] => 22 )
ご覧のとおり、PHP 配列
$arr# をシリアル化しました。 ## を文字列$str に変換し、
unserialize() 関数を使用してそれを PHP 配列
$objArr に復元します。
フロントエンドでは、
json_encode()
JSON.parse() を使用できます。関数を使用して Object 配列オブジェクトに変換します。
3. まとめ
以上がPHP配列をJSオブジェクト配列オブジェクトに変換する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。