如何从 PHP JSON 编码制作这个 JavaScript 对象


how to make this javascript object from php json encode

你好,我试图弄清楚我以前如何从 PHP 数据库中提取信息并将其json_encoding到一个包含多个 JavaScript 数组的 JavaScript 对象,这些数组本身具有子对象和数组。下面是我需要的JavaScript。 我一直在玩将数组嵌入到 PHP 对象中,但似乎无法正确使用它。

self.navigation = [
    {
        menutext:"Home",
        url:"/"
    },
    {
        menutext:"About",
        url: "#/about",
        submenu:[
        {
            menutext:"Pricing",
        url: "/pricing"
        }
        ]
    }
    ];
<script type="text/javascript">
 var jsObject = <?php echo json_encode($phparray); ?>;
</script>

我认为这是不言自明的,如果您需要特定方式的对象,那就是如何格式化 PHP 数组本身。

要获取对象中的数组,请使用对象键并将其设置为如下所示的数组:

$phpArray = array(
        'magic' => array('elmo')
);

json_encoded数组将位于"魔术"对象中。为了将父项作为包含对象的数组,我只需在变量设置本身中对其进行捏造,如下所示:

<script type="text/javascript">
 var jsObject = [<?php echo json_encode($phparray); ?>];
</script>

要将子菜单放入数组中,您是否尝试了以下方法:

$phpArray = array(
'menutext' => 'About',
'url' => '#/about',
'submenu' => array(
    array(
    'menutext' => 'Pricing',
    'url' => '/pricing')
)
);

我知道有点不直观。实际上,要得到你想要的而不捏造它,将是:

$phpArray = array(
array(
'menutext' => 'Home'
),
array(
'menutext' => 'About',
'url' => '#/about',
'submenu' => array(
    array('menutext' => 'Pricing',
    'url'=> '/pricing')
)
)
);