PHP では、3 次元配列は複数の 2 次元配列を含む配列を指し、各 2 次元配列には複数の 1 次元配列が含まれます。 3 次元配列を扱う場合、データを保存または送信するために、配列を文字列に変換する必要がある場合があります。ここでは、PHP の 3 次元配列を文字列に変換するいくつかの方法を示します。
PHP の json_encode 関数は、配列を json 形式の文字列に変換できます。したがって、この関数を呼び出すことで、3 次元配列を json 文字列に変換できます。サンプル コードは次のとおりです。
$threeDimensionalArray = array( array( array('a', 'b', 'c'), array('d', 'e', 'f') ), array( array('g', 'h', 'i'), array('j', 'k', 'l') ) ); $jsonString = json_encode($threeDimensionalArray);
上記のコードでは、$threeDimensionalArray は 3 次元配列であり、json_encode 関数を使用して json 文字列に変換され、$jsonString 変数に格納されます。変換された $jsonString 文字列は次のとおりです。
[ [ ["a","b","c"], ["d","e","f"] ], [ ["g","h","i"], ["j","k","l"] ] ]
PHP のシリアル化関数を使用すると、配列を文字列にシリアル化し、簡単に保存したり送信したりできます。この関数を呼び出すことで、3 次元配列を文字列に変換できます。サンプル コードは次のとおりです。
$threeDimensionalArray = array( array( array('a', 'b', 'c'), array('d', 'e', 'f') ), array( array('g', 'h', 'i'), array('j', 'k', 'l') ) ); $serializedString = serialize($threeDimensionalArray);
上記のコードでは、$threeDimensionalArray は 3 次元配列であり、serialize 関数を使用して文字列に変換され、$serializedString 変数に格納されます。変換された $serializedString 文字列は次のとおりです:
a:2:{i:0;a:2:{i:0;a:3:{i:0;s:1:"a";i:1;s:1:"b";i:2;s:1:"c";}i:1;a:3:{i:0;s:1:"d";i:1;s:1:"e";i:2;s:1:"f";}}i:1;a:2:{i:0;a:3:{i:0;s:1:"g";i:1;s:1:"h";i:2;s:1:"i";}i:1;a:3:{i:0;s:1:"j";i:1;s:1:"k";i:2;s:1:"l";}}}
PHP の implode 関数は、配列を文字列に連結できます。この関数を呼び出すことができます。次元配列を文字列に変換します。サンプル コードは次のとおりです:
$threeDimensionalArray = array( array( array('a', 'b', 'c'), array('d', 'e', 'f') ), array( array('g', 'h', 'i'), array('j', 'k', 'l') ) ); $flattenedArray = array(); foreach ($threeDimensionalArray as $array2) { foreach ($array2 as $array1) { $flattenedArray[] = implode(',', $array1); } } $implodedString = implode('|', $flattenedArray);
上記のコードでは、$threeDimensionalArray は 3 次元配列ですが、二重ループによって 1 次元配列 $ flattenedArray に変換され、次に implode 関数が実行されます。 $ flattenedArray 配列を文字列に接続するために使用されます。変換された $implodedString 文字列は次のとおりです。
a,b,c,d,e,f|g,h,i,j,k,l
summary
PHP で 3 次元配列を文字列に変換するには、主に 3 つの方法があります。json_encode 関数を使用する方法、serialize 関数を使用する方法、および爆縮機能。 json_encode 関数と seriesize 関数を使用すると、配列の構造情報を保持し、多次元配列をサポートできますが、生成された文字列は比較的冗長で、手動で読み取ったり変更したりするのは不便です。 implode 関数を使用すると、多次元配列を平坦化し、より単純な文字列を生成できますが、元の配列構造情報を復元するには追加の処理が必要です。
以上がphpの三次元配列を文字列に変換の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。