2 つの方法があります。
1) 現在の状態で配列を渡します。
<?php
$array = [
[ 'name' => 'x' , 'value' => 1 ],
[ 'name' => 'y' , 'value' => 2 ],
[ 'name' => 'z' , 'value' => 3 ]
];
?>
<script type="text/javascript">
var php_json = <?php echo json_encode($array); ?>;
for(var i = 0; i < php_json.length; i++){
console.log(php_json[i]);
}
</script>
2) キーと値のペアに変換して渡す:
<?php
$array = [
[ 'name' => 'x' , 'value' => 1 ],
[ 'name' => 'y' , 'value' => 2 ],
[ 'name' => 'z' , 'value' => 3 ]
];
$buffer = [];
foreach($array as &$nested){
$buffer[$nested['name']] = $nested['value'];
}
?>
<script type="text/javascript">
var php_json = <?php echo json_encode($buffer); ?>;
for(var key in php_json){
console.log(key, php_json[key]);
// key ^ ^ value
}
</script>
関数を使用して、簡単な php データ構造を JavaScript に簡単に渡すことができjson_encode()
ます。