在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問(wèn)答/HTML5  PHP  HTML/ HTML中如何處理PHP傳遞的三維數(shù)組

HTML中如何處理PHP傳遞的三維數(shù)組

需求描述:
從 PHP 拿過(guò)來(lái)一組三維數(shù)組,現(xiàn)在想要通過(guò) JQ/JS 獲取里面數(shù)據(jù)。

  1. 如何在頁(yè)面中正確獲取 {$layer} 的數(shù)組(不需要顯示)?
  2. JQ/JS 分別獲取數(shù)據(jù)?

HTML

<volist name="layer" id="layer">
    <php> print_r($layer);</php>
</volist>

打印結(jié)果

Array(
    [id] => 2387
    [image] => /Public/upload/users/2018/06-01/5b10f39be1305.jpg
    [layername] => 
    [floorid] => 1
    [icon] => Array
        (
            [0] => Array
                (
                    [posx] => 0.2541
                    [posy] => 0.3444
                    [onegoodscategoryid] => 868
                    [portnum] => 0
                    [portid] => 
                    [image] => /Public/upload/category/2018/04-12/5acee8b14f930.png
                    [iconname] => IC
                    [name] => 室內(nèi)攝像機(jī)
                )

            [1] => Array
                (
                    [posx] => 0.684
                    [posy] => 0.5306
                    [onegoodscategoryid] => 868
                    [portnum] => 0
                    [portid] => 
                    [image] => /Public/upload/category/2018/04-12/5acee8b14f930.png
                    [iconname] => IC
                    [name] => 室內(nèi)攝像機(jī)
                )

        )
)
Array(
    [id] => 2388
    [image] => /Public/upload/users/2018/06-01/5b10f3d576921.jpg
    [layername] => 
    [floorid] => 2
    [icon] => Array
        (
            [0] => Array
                (
                    [posx] => 0.3859
                    [posy] => 0.474
                    [onegoodscategoryid] => 950
                    [portnum] => 0
                    [portid] => 
                    [image] => /Public/upload/category/2018/04-17/5ad565ce07a13.png
                    [iconname] => GS
                    [name] => 燃?xì)飧袘?yīng)器
                )
        )
)
回答
編輯回答
爆扎

volist嵌套使用

2018年1月31日 17:05
編輯回答
哚蕾咪

你好,開(kāi)發(fā)者,嘿嘿~

首先你可能需要了解一下,php變量賦值給js變量,正常情況下,可以這樣:

<?php 

    $str = "val";
 ?>

 <script type="text/javascript">
     var str = "<?php echo $str;?>";
 </script>

這樣的話,是把一個(gè)簡(jiǎn)單的php變量賦給了js變量;如你問(wèn)題提問(wèn)的,如何把php數(shù)組賦值給js變量呢?他們兩個(gè)語(yǔ)言中有一個(gè)相同的地方,就是同時(shí)可以操作json(因?yàn)檎Z(yǔ)言不同,所以數(shù)組類型不能直接賦值),可以作如下改變:

<?php 
    $arr = [
        0 => [
            'name'      => 'xiaoming',
            'girlfrind' => ['xiaohong', 'xiaoli']
        ]
    ];

    // 將數(shù)組轉(zhuǎn)換為json
    $json_arr = json_encode($arr);
 ?>

 <script type="text/javascript">
    // 此時(shí)json即為json類型
    var json = "<?php echo $json_arr?>";
    // 轉(zhuǎn)換json類型變量為數(shù)組類型變量
    // 即 此時(shí)arr為js數(shù)組類型的變量
    var arr = JSON.parse( json );
 </script>

這樣就可以用js/jq操作js數(shù)組了;

注意

  1. php變量賦值給js變量的時(shí)候,一定要加引號(hào);如果不加引號(hào),當(dāng)php變量為空的時(shí)候,js會(huì)報(bào)一個(gè)致命錯(cuò)誤;
  2. 賦值過(guò)程必須在.php文件類型下進(jìn)行;如果是.js的文件類型,是不能執(zhí)行php代碼的,js不支持php語(yǔ)言,但是php文件卻支持js語(yǔ)言;
2018年7月25日 10:18
編輯回答
真難過(guò)
<script>
var layer = JSON.parse('{:json_encode($layer)}');
</script>
2017年12月17日 14:03