基础教程
菜鸟教程(cainiaojc.com)
HTML/CSS
HTML基础教程
HTML5基础教程
HTML参考手册
SVG 教程
CSS 教程
CSS 参考手册
CSS3教程
Bootstrap3 教程
Bootstrap4 教程
Font Awesome图标
JavaScript
JavaScript 教程
JavaScript 参考手册
jQuery 教程
AJAX 教程
JSON 教程
AngularJS 教程
ReactJS 教程
NodeJS 教程
服务端开发
C++ 教程
Golang 教程
C 语言教程
PHP 教程
C# 教程
LINQ 教程
Lua 教程
Ruby 教程
Rust 教程
Linux 教程
R 语言教程
Docker 教程
Scala 教程
MatLab 教程
Erlang 教程
Java教程
Java 教程
SpringBoot 教程
JDBC 教程
JSP 教程
Servlet 教程
Maven 教程
Spring 教程
Python教程
Python 教程
Pandas教程
Numpy教程
Django 教程
Matplotlib 教程
Flask 教程
移动端
Swift 教程
Kotlin 教程
数据库
SQL 教程
MongoDB 教程
SQLite 教程
PostgreSQL 教程
MySql 教程
Redis 教程
Elasticsearch 教程
经验笔记
在线工具
首页
PHP 教程
PHP JSON 解析
PHP 类和对象,调用两个对象的方法示例
源代码:
点击运行
<?php //定义递归函数以提取嵌套值 function printValues($arr) { global $count; global $values; //检查输入是否为数组 if(!is_array($arr)){ die("错误:输入不是数组"); } /* 遍历数组,如果value本身是数组,则递归调用 函数将找到的值添加到输出项目数组中, 并为找到的每个值将计数器加1 */ foreach($arr as $key=>$value){ if(is_array($value)){ printValues($value); } else{ $values[] = $value; $count++; } } // 返回在数组中找到的总计数和值 return array('total' => $count, 'values' => $values); } //将JSON编码的字符串分配给PHP变量 $json = '{ "book": { "name": "Harry Potter and the Goblet of Fire", "author": "J. K. Rowling", "year": 2000, "characters": ["Harry Potter", "Hermione Granger", "Ron Weasley"], "genre": "Fantasy Fiction", "price": { "paperback": "$10.40", "hardcover": "$20.32", "kindle": "4.11" } } }'; //将JSON数据解码为PHP关联数组格式 $arr = json_decode($json, true); //调用该函数并打印所有值 $result = printValues($arr); echo "<h3>" . $result["total"] . " value(s) found: </h3>"; echo implode("<br>", $result["values"]); echo "<hr>"; //打印一个值 echo $arr["book"]["author"] . "<br>"; //输出: J. K. Rowling echo $arr["book"]["characters"][0] . "<br>"; //输出: Harry Potter echo $arr["book"]["price"]["hardcover"]; //输出: $20.32 ?>
运行结果
Copyright ©2021
菜鸟教程
cainiaojc.com