phpのarrayをjavascriptで使いたいなと思って調べてみた。
一回xmlにするのと、php serializeを使う方法があるけど、
とりあえず、xmlにしてみる。
function php2xml($arr) { return xmlrpc_encode($ar); }
<params> <param> <value> <struct> <member> <name>a</name> <value> <string>a</string> </value> </member> </struct> </value> </param> </params>
これをjavascriptでparseしなくちゃいかんのか。。
へこむ。
php array → xml → javascript array
なんで、2回も変換しなくちゃいかんのだ。
seiralizeでいくことにした。
PHP_Unserialize.jsという素敵なものをみつけた。
serializeした文字を読ませると時々読めない場合があったので、原因を探すと
日本語の文字だとPHP側のserializeで3byteでカウントして、
javascriptでは1文字とカウントするため、
読めなかったご様子。
とりあえず、urlencodeしてみたら問題なくJavaScript Arrayに変換してくれた。
うーんencodeしたはいいけど、decodeできないぜ。
PHPでencodeしたものをJavaScriptでdecodeできるやつってないかのー?
自分でエンコード&デコードなんてメンドイ。