PHP生成及获取JSON文件的方法

yipeiwu_com6年前PHP代码库

本文实例讲述了PHP生成及获取JSON文件的方法。分享给大家供大家参考,具体如下:

首先定义一个数组,然后遍历数据表,把相应的数据放到数组中,最后通过json_encode()转化数组

json_encode() 函数的功能是将数值转换成 JSON 数据存储格式。

putjson.php:

<?php
// 生成一个PHP数组
$data = array();
$data[0] = array('1','吴者然','onestopweb.cn');
$data[1] = array('2','何开','iteye.com');
// 把PHP数组转成JSON字符串
$json_string = json_encode($data);
// 写入文件
file_put_contents('test.json', $json_string);
?>

有同名的 JSON 文件则覆盖,没有则创建。

生成或覆盖的 JSON 如下:

复制代码 代码如下:
[["1","\u811A\u672C\u4E4B\u5BB6","www.jb51.net"],["2","\u7F16\u7A0B\u5F00\u53D1","jb51.net"]]

然后,把 JSON 文件中的数据读取到PHP变量中。

getjson.php:

<?php
// 从文件中读取数据到PHP变量
$json_string = file_get_contents('test.json');
// 把JSON字符串转成PHP数组
$data = json_decode($json_string, true);
// 显示出来看看
var_dump($data);
echo '<br><br>';
print_r($data);
echo '<br><br>';
echo '编号:'.$data[0][0].' 姓名:'.$data[0][1].' 网址:'.$data[0][2];
echo '<br>';
echo '编号:'.$data[1][0].' 姓名:'.$data[1][1].' 网址:'.$data[1][2];
?>

效果图:

PS:这里再为大家推荐几款比较实用的json在线工具供大家参考使用:

在线JSON代码检验、检验、美化、格式化工具:
http://tools.jb51.net/code/json

JSON在线格式化工具:
http://tools.jb51.net/code/jsonformat

在线XML/JSON互相转换工具:
http://tools.jb51.net/code/xmljson

json代码在线格式化/美化/压缩/编辑/转换工具:
http://tools.jb51.net/code/jsoncodeformat

C语言风格/HTML/CSS/json代码格式化美化工具:
http://tools.jb51.net/code/ccode_html_css_json

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP中json格式数据操作技巧汇总》、《PHP针对XML文件操作技巧总结》、《PHP基本语法入门教程》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

希望本文所述对大家PHP程序设计有所帮助。

相关文章

php自动跳转中英文页面

PHP代码: <? $lan = substr(?$HTTP_ACCEPT_LANGUAGE,0,5); if ($lan == ...

PHP中的Iterator迭代对象属性详解

PHP中的Iterator迭代对象属性详解

前言 foreach用法和之前的数组遍历是一样的,只不过这里遍历的key是属性名,value是属性值。在类外部遍历时,只能遍历到public属性的,因为其它的都是受保护的,类外部不可见。...

PHP在获取指定目录下的目录,在获取的目录下面再创建文件,多平台

复制代码 代码如下: //取得指定文件夹的目录名称 function get_dir_name($dir_path,$file) { $dirpath = $dir_path; $dir...

PHP实现向关联数组指定的Key之前插入元素的方法

本文实例讲述了PHP实现向关联数组指定的Key之前插入元素的方法。分享给大家供大家参考,具体如下: PHP 关联数组可以通过三种方式插入新元素: 1. $array[$insert_ke...

php若干单维数组遍历方法的比较

复制代码 代码如下: <?php //a $arr=array('a'=>'abc','b'=>123,'c'=>true); //b //$arr=range(...