将php数组映射到javascript

Map a php array to javascript

本文关键字:javascript 映射 数组 php      更新时间:2023-09-26

php中有一个数组:

<?php
return array(
 'r'      => '16:9',
 'check'            => array(
                            array('w' => 640, 'q' => 70),
                            array('w' => 960, 'q' => 70)
                      ),                            
 'window_height'        => 800
);

我需要得到这个在我的javascript,所以我有:

<script>var config = "{{ json_encode(Config::get('conf')) }}";</script>

但是我很难把每个元素取出来。

假设模板引擎没有应用额外的HTML转义,您所要做的就是删除引号。JSON-encoding会为您处理这一切。

<script>var config = {{ json_encode(Config::get('conf')) }};</script>

您可以通过查看PHP脚本的原始输出来调试它。(通常在浏览器中显示"查看源代码")

现在,我不知道Twig,但根据它的文档,可能有一个更好的方法,使用自己的JS转义。显然没有经过测试,但不妨试试:

{% autoescape 'js' %}
    <script>var config = {{ Config::get('conf') }};</script>
{% endautoescape %}