下記のような PHP で生成したデータを javascript で json 形式にて扱いたい時。
$data = [
'result' => 'success',
'data' => [
[
'id' => 1,
'name' => 'Prodigy',
],
[
'id' => 2,
'name' => 'Rage Against The Machine',
],
],
];
Twig には便利なフィルターが色々ある
<script type="text/javascript">
let d = '{{ data|json_encode()|escape("js") }}'
try {
d = JSON.parse(d)
} catch(e) {
d = null
}
console.log(d)
</script>