• 普通数组和json数组的区别


    PHP 数组

    什么是数组?

    数组是特殊的变量,它可以同时保存一个以上的值。

    在 PHP 中创建数组

    在 PHP 中, array() 函数用于创建数组

    在 PHP 中,有三种数组类型:

    • 索引数组 - 带有数字索引的数组
    • 关联数组 - 带有指定键的数组
    • 多维数组 - 包含一个或多个数组的数组

    PHP 索引数组

    有两种创建索引数组的方法:

    索引是自动分配的(索引从 0 开始):

    $cars=array("Volvo","BMW","SAAB");

    或者也可以手动分配索引:

    $cars[0]="Volvo";
    $cars[1]="BMW";

    PHP 关联数组

    关联数组是使用您分配给数组的指定键的数组。

    有两种创建关联数组的方法:

    $age=array("Peter"=>"35","Ben"=>"37","Joe"=>"43");
    $age['Peter']="35";
    $age['Ben']="37";
    $age['Joe']="43";

    PHP - 多维数组

    多维数组指的是包含一个或多个数组的数组。

    PHP 能理解两、三、四或五级甚至更多级的多维数组。不过,超过三级深的数组对于大多数人难于管理。

    Json的规格

    1) 并列的数据之间用逗号(”, “)分隔。
    2) 映射用冒号(”: “)表示。
    3) 并列数据的集合(数组)用方括号(“[]“)表示。
    4) 映射的集合(对象)用大括号(”{}”)表示。


    可以使用索引值来访问数组:
    x = myObj.sites[0];

    可以使用 for-in 来访问数组:

    for (i in myObj.sites) {
        x += myObj.sites[i] + "<br>";
    }

    循环访问嵌套 JSON 对象中的数组

    <!DOCTYPE html>
    <html>
    <head>
    <meta charset="utf-8">
    <title>菜鸟教程(runoob.com)</title>
    </head>
    <body>
    
    <p>循环内嵌数组:</p>
    
    <p id="demo"></p>
    
    <script>
    
    var myObj, i, j, x = "";
    myObj = {
        "name":"网站",
        "num":3,
        "sites": [
            { "name":"Google", "info":[ "Android", "Google 搜索", "Google 翻译" ] },
            { "name":"Runoob", "info":[ "菜鸟教程", "菜鸟工具", "菜鸟微信" ] },
            { "name":"Taobao", "info":[ "淘宝", "网购" ] }
        ]
    }
    
    for (i in myObj.sites) {
        x += "<h1>" + myObj.sites[i].name + "</h1>";
        for (j in myObj.sites[i].info) {
            x += myObj.sites[i].info[j] + "<br>";
        }
    }
    
    document.getElementById("demo").innerHTML = x;
    
    </script>
    
    </body>
    </html>
    View Code

    输出:

    循环内嵌数组:
    
     
    
    Google
    
    Android
    Google 搜索
    Google 翻译
    Runoob
    
    菜鸟教程
    菜鸟工具
    菜鸟微信
    Taobao
    
    淘宝
    网购
     
    View Code

    修改

    myObj.sites[1] = "Github";

    删除

    delete myObj.sites[1];

  • 相关阅读:
    ARM9嵌入式学习日志--20170828
    技术积累
    做产品还是做技术?
    python学习之一
    他山之石——面试非技术问题整理(持续更新中)
    他山之石——面试技术问题整理(持续更新中)
    .bss .text和.data简介
    linux学习——大话linux网络
    实用的技术网站
    linux学习——centos minimal安装vim
  • 原文地址:https://www.cnblogs.com/iampengl/p/8894090.html
Copyright © 2020-2023  润新知