この記事では、php配列をjson形式に変換する方法を説明します。参考のためにみんなで共有してください。具体的な実装方法は以下の通りです
コードをコピーします コードは次のとおりです: function array_to_json( $array ){
If( !is_array( $array ) ){
false を返す;
}
$associative = count( array_diff( array_keys($array), array_keys( array_keys( $array )) ));
If( $associative ){
$construct = array();
foreach( $array as $key => $value ){
// まず、各キーと値のペアをステージング配列にコピーします
// 各キーと値を適切にフォーマットします。
// キーをフォーマットします:
If( is_numeric($key) ){
$key = "key_$key";
}
$key = "'".addslashes($key)."'";
// 値をフォーマットします:
if( is_array( $value )){
$value = array_to_json( $value );
} else if( !is_numeric( $value ) || is_string( $value ) ){
$value = "'".addslashes($value)."'";
}
// ステージング配列に追加:
$construct[] = "$key: $value";
}
// 次に、ステージング配列を JSON 形式に折りたたみます:
$result = "{ " . implode( ", ", $construct ) .
} else { // 配列がベクトル (結合ではない) の場合:
$construct = array();
foreach( $array as $value ){
// 値をフォーマットします:
if( is_array( $value )){
$value = array_to_json( $value );
} else if( !is_numeric( $value ) || is_string( $value ) ){
$value = "'".addslashes($value)."'";
}
// ステージング配列に追加:
$construct[] = $value;
}
// 次に、ステージング配列を JSON 形式に折りたたみます:
$result = "[ " . implode( ", ", $construct ) " .
}
$result を返します;
}
この記事で説明した内容が皆様の PHP プログラミング設計に役立つことを願っています。
http://www.bkjia.com/PHPjc/965352.html