• 締切済み

jsと多次元配列

phpの2次元配列値をjsに渡すにはどうしたらよいでしょうか?

みんなの回答

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

javascriptでは配列は[]でつくれます。 多次元であれば入れ子をすればよいでしょう。 従ってこんなやり方でいけるでしょう。 <?php $a=Array(Array("a","b", "c"),Array("d","e"),Array("f")); $str=""; foreach($a as $a2){ $str2=""; foreach($a2 as $val){ $str2.=($str2==""?"":",")."\"{$val}\""; } $str.=($str==""?"":",").($str2==""?"":"[{$str2}]"); } print <<<eos <script> var a=[$str]; for(var i=0;i<a.length;i++){ for(var j=0;j<a[i].length;j++){ alert(i+"."+j+":"+a[i][j]); } } </script> eos; ?>

imkgp
質問者

お礼

ご回答にうなり申した!感謝

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.1

>phpの2次元配列値をjsに渡す 状況がまったく説明されていないので答えようがありません。 jsとは拡張子jsの外部化されたjavascriptでしょうか? 与えられたデータをどうやって使いたいのでしょうか?

imkgp
質問者

補足

<?php $a[0][1] = "hoge" ; print <<< eos <script> alert('$a[0][1]'); </script> eos; ?> //見たいな感じです。 <?php $a[0][1] = "hoge" ; $hoge = $a[0][1]; print <<< eos <script> alert('$hoge'); </script> eos; ?> //は表示されたきがしますが、”配列の数字をforなどjs側で変更して表示”までを考えています! //どのようにしたらよいでしょうか?

関連するQ&A