この記事では、PHPで配列を再帰的にエスケープする方法を例の形で説明し、参考として皆さんと共有します。具体的な方法は以下の通りです
PHPでは配列をxmlに変換する必要があるのが一般的で、Baiduでは様々な実装方法を模索しましたが、基本的にはいくつかのコンポーネントを借用しました。私は、多次元配列をサポートする文字列グループ化メソッドを自分で作成しました。あくまで参考ですので、何か不備がございましたらお気軽にお知らせください!
?
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
/** * 配列を XML に変換します * @param array $data 変換する配列 * @param bool $root ルートノードが必要かどうか * @return string xml string * @著者ドラゴンディーン * @url http://www.cnblogs.com/dragondean */ 関数 arr2xml($data, $root = true){ $str=""; if($root)$str .= " foreach($data as $key => $val){ if(is_array($val)){ $child = arr2xml($val, false); $str .= "<$key>$child$key>"; }その他{ $str.= "<$key>$key>"; } } if($root)$str .= ""; $str;を返す } |
上記は実装方法です。最初のパラメータは、
テストコード:
コードをコピーします。コードは次のとおりです:
$arr=array('a'=>'aaa','b'=>array('c'=>'1234' , 'd' => "asdfasdf"));
echo arr2xml($arr);
コードを実行した後の結果は次のとおりです:
コードをコピーします。コードは次のとおりです:
以上がこの記事の全内容ですが、皆さんに気に入っていただければ幸いです。