普通数组和json数组的区别

时间:2022-06-27 05:40:07

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>

输出:

循环内嵌数组:

Google

Android
Google 搜索
Google 翻译
Runoob 菜鸟教程
菜鸟工具
菜鸟微信
Taobao 淘宝
网购

修改

myObj.sites[1] = "Github";

删除

delete myObj.sites[1];