PHP array与Json学习

简介: 在 PHP 中,有三种数组类型: 索引数组 - 带有数字索引的数组,(可以理解C/C++/Java中的数组,按照索引位置直接访问) 关联数组 - 带有指定键的数组,(可以理解为map,按照键值对存储,按照键访问) 多维数组 - 包含一个或多个数组的数组,(可以理解为复杂的数组,元素可以是普通元素或者数组) 1.索引数组   可以使用数据的索引(下标)访问的数组。

在 PHP 中,有三种数组类型

  • 索引数组 - 带有数字索引的数组,(可以理解C/C++/Java中的数组,按照索引位置直接访问)
  • 关联数组 - 带有指定键的数组,(可以理解为map,按照键值对存储,按照键访问)
  • 多维数组 - 包含一个或多个数组的数组,(可以理解为复杂的数组,元素可以是普通元素或者数组)

1.索引数组

  可以使用数据的索引(下标)访问的数组。如下面的代码:

1 <?php
2 $myArray=array(1,2);
3 $myArray[]=4;    //向末尾添加元素,等价于array_push()
4 $myArray[]=5;    //向末尾添加元素,等价于array_push()
5 echo $myArray[0]."\n";    //1
6 echo $myArray[2]."\n";    //4
7 ?>

2.关联数组

   保存键值对数据,数据按照键名访问。如出现同名的键,后加的替换之前数据。如下面的代码:

 1 <?php
 2 $myArray=array("name"=>"liu");
 3 $myArray["name"]="wang";
 4 $myArray["school"]="bupt";
 5 foreach($myArray as $key=>$value){
 6         echo $key.":".$value."\n";
 7 }
 8 /*
 9 输出:
10 name:wang
11 school:bupt
12 */
13 ?>

3.多维数组

   数组的元素可以是普通元素,也可以是其他的元素。如下面的代码:

1 <?php
2 $indexArray=array(1,2,3);
3 $myArray=array($indexArray,"6"=>"liu");
4 $myArray["age"]=18;
5 $myArray[]="bupt";
6 print_r($myArray);
7 ?>

  输出:

4.PHP数组与JSON格式的转换

  php提供了函数可以直接进行转换:

  (1) json_encode : php数组 ---> json字符串

  (2) json_decode : json字符串 ---> php数组(需要设置第二个参数为true)

相关文章
|
28天前
|
SQL 关系型数据库 MySQL
如何学习PHP编程?
【10月更文挑战第2天】如何学习PHP编程?
37 9
|
2月前
|
XML 存储 JSON
Twaver-HTML5基础学习(19)数据容器(2)_数据序列化_XML、Json
本文介绍了Twaver HTML5中的数据序列化,包括XML和JSON格式的序列化与反序列化方法。文章通过示例代码展示了如何将DataBox中的数据序列化为XML和JSON字符串,以及如何从这些字符串中反序列化数据,重建DataBox中的对象。此外,还提到了用户自定义属性的序列化注册方法。
42 1
|
2天前
|
JSON 缓存 前端开发
PHP如何高效地处理JSON数据:从编码到解码
在现代Web开发中,JSON已成为数据交换的标准格式。本文探讨了PHP如何高效处理JSON数据,包括编码和解码的过程。通过简化数据结构、使用优化选项、缓存机制及合理设置解码参数等方法,可以显著提升JSON处理的性能,确保系统快速稳定运行。
|
2月前
|
IDE 关系型数据库 PHP
php语言学习
【9月更文挑战第1天】php语言学习
34 3
|
2月前
|
SQL 安全 IDE
如何开始学习PHP?
【9月更文挑战第1天】如何开始学习PHP?
42 1
|
3月前
|
JavaScript 前端开发 PHP
|
3月前
|
JSON 前端开发 JavaScript
php中JSON或数组到formData的键值对转换
转换JSON或数组到formData格式的键值对并不复杂。PHP的 `json_decode()`与 `http_build_query()`是实现这一转换过程的关键函数。理解这个转换过程对于开发中处理各种AJAX请求时调整数据格式至关重要。这样,无论是处理来自客户端的JSON字符串,还是服务器端的数组数据,都能够灵活地转换为适合网络传输的格式,确保数据交换的顺畅和高效。
85 4
|
3月前
|
存储 JSON 测试技术
Python中最值得学习的第三方JSON库
Python中最值得学习的第三方JSON库
|
4月前
|
JSON JavaScript 前端开发
|
4月前
|
前端开发 JavaScript 安全