Home > Backend Development > PHP Tutorial > JSON Advanced Part 1: Using JSON_PHP Tutorial in PHP and JavaScript

JSON Advanced Part 1: Using JSON_PHP Tutorial in PHP and JavaScript

WBOY
Release: 2016-07-13 17:48:31
Original
972 people have browsed it

one. Introduction to JSON
JSON (JavaScript Object Notation) is a lightweight data exchange format. Easy for humans to read and write. It is also easy for machines to parse and generate. JSON uses a completely language-independent text format, but also uses conventions similar to the C language family (including C, C++, C#, Java, JavaScript, Perl, Python, etc.). These properties make JSON an ideal data exchange language. For a detailed explanation of JSON, please visit the JSON official website. There are pictures and facts on this website. It is recommended to study it carefully. In addition, the introduction of JSON on Wikipedia is also very detailed, you can visit it.

two. JSON encoding in PHP
It is very easy to generate JSON strings in PHP. You can directly use the json_encode() function to convert PHP data into JSON strings. The prototype of this function is as follows:

string json_encode (mixed $value)

This function can transcode any data, except resource types.

three. Javascript parses JSON
There are two methods: one is to use the eval() function directly. This method is the fastest. However, since the eval method can also execute arbitrary JavaScript code, security issues may arise when the data source is unreliable. For example, the following example will cause the page to be redirected:

[html] view plaincopy



A piece of JSON data that uses eval() to explain that will cause the page to be redirected




A piece of JSON data that uses eval() to interpret will cause the page to be redirected




The second method can prevent the occurrence of unsafe code - read JSON data through the JSON.parse(str) method natively supported by the browser. This method uses a parser to verify whether the read code is really JSON code, thus providing better security. However, since this is read in a simulated manner, it will be slower than eval().

Four. JSON example
The following uses an example to explain how data is encoded into a JSON string, and how the JSON string is parsed and used in JavaScript. The program is divided into json1.php and json1.html. The program also needs to reference Smarty, JQuery and JSON library files.

1. json1.php

[php] view plaincopy
// by MoreWindows( http://blog.csdn.net/MoreWindows )
require_once ('../../smarty_libs/Smarty.class.php');
$tpl_article_array = array(
"001" => array(
"title"=>"Access MySql Database with PHP - Elementary",
"link"=>"http://www.BkJia.com/kf/201112/115227.html"
),
"002" => array(
"title"=>"PHP Access MySql Database Intermediate Smarty Technology",
"link"=>"http://www.BkJia.com/kf/201112/115229.html"
),
"003" => array(
"title"=>"PHP Access MySql Database Advanced AJAX Technology",
"link"=>"http://www.BkJia.com/kf/201112/115230.html"
),
);

$tpl_article_json = json_encode($tpl_article_array);
$tpl = new Smarty();
$tpl->assign("article_array", $tpl_article_array);
$tpl->assign("article_json", $tpl_article_json);
$tpl->display("json1.html");
?>
2. json1.html
 www.2cto.com
[html] view plaincopy
 
 
 
使用json 
 
 
 
 
 
 
{foreach $article_array as $key=>$value} 
   
 
       

{$value['title']}

 
   
     
{/foreach} 

 
 
 
运行结果如下(Win7+IE9.0):
 
 
 
当鼠标经过三个标题时,会触发mouseenter事件显示提示语句。
 
下一篇《JSON进阶第二篇AJAX方式传递JSON数据》将介绍如何用AJAX动态请求得到JSON数据并生成标题及提示语句。
 
 
转载请标明出处,原文地址:http://blog.csdn.net/morewindows/article/details/7197971

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/478435.htmlTechArticle一.JSON简介 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。JSON采用完全独立于...
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template