It is a subset based on JavaScript Programming Language, Standard ECMA-262 3rd Edition - December 1999
JSON mainly uses pairs of {} to wrap each object (object), and pairs of [] to wrap each object array (array),
Use pairs of "" to wrap each string, use commas to separate each variable, and the data types include string, number, array, object
The following simple JSON The format describes that an object json has a member variable, which contains three objects
Copy content to the clipboard code:
var json = {
'query' : [
{'id':'1','type':'a','title':'PHP 5.2.0's new function JSON decoder & encoder'},
{'id':'2', 'type':'b','title':'JSON stands for JavaScript Object Notation'},
{'array': ['A', 'B','C', 'D', 'E'] }
]
};
In this way, we can get an Object called json, and this json Object contains an independent member query
and query contains an Array, and this Array contains Three Objects, the first two Objects contain three members
id, type, title, and the last Object array contains an array. Do you understand this explanation?
But how to use it?
Very simple
alert('I have ' +json.query.length + ' object.');
//alert I have 3 object.
alert('type='+json. query[1].type+'rntitle'+json.query[1].title);
//alert type=b title=JSON full name JavaScript Object Notation
alert('array index 3='+json. query[2].array[3]);
//alert array index 3=D
This way it is easier to operate the data. There is no need to deal with the complex DOM, and the required data can be easily Obtain
For example, in the above example json.query[ i ].title, you can obtain the value contained in the i-th title
PHP is developing very rapidly. When the programming community still has little understanding of JSON, it may not be possible at all. When I don’t know what JSON is,
PHP has been incorporated into the core in the latest version 5.2.0, and the default state is enabled. Compared with other Script languages,
PHP is leading the way. In version 5.2.0, it is JSON. Implemented two functions json_decode() and json_encode()
The former is to restore the JSON format string to the PHP native array
The latter is to compile the PHP native array into the JSON format string
However, since Javascript supports Unicode, if you use non-Ascii characters when accessing the database, such as Chinese, Japanese, and Korean
you need to convert the character encoding to UTF8, otherwise the string after json_encode() will be It’s gibberish
================================================ = ==========
After a brief introduction to JOSN in the previous article
This article will implement how to use JOSN
The following examples require the use of MySQL4.1 or above
The entire encoding process uses utf8
to inherit the data format of the previous article. There are three fields in the table: id, type, title
The specifications of the data table are as follows
Copy the content to the clipboard code:
CREATE TABLE `news ` (
`id` int(10) unsigned NOT NULL auto_increment,
`type` varchar(255) NOT NULL default '',
`title` varchar(64) NOT NULL default '',
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=0 DEFAULT CHARSET=utf8;
Copy content to clipboard code:
//Establish connection
$conn = mysqli_connect("localhost", 'root', '')or die('Cannot connect to the database');
//Select the database
mysqli_select_db($conn,'mydata') or die('Cannot select database');
//Set connection encoding rules, don't know how to find it on google
mysqli_query($conn,'SET NAMES 'utf8'');
// Get data
$results = mysqli_query($conn,'SELECT id,type,title FROM news');
//Josn string
$json = '';
//Because it is an example , so control the loop by yourself
$i=0;
while($row = mysqli_fetch_assoc($results))
{
$i++;
$json .= json_encode($row) ;
//There are only three pieces of data in the data table, so there is no need to add "," at the end of the third piece of data. Remember, there is no need to add "," to the last piece of data.
if ($i< ;3)
{
$json .= ",";
}
}
//Pack the data into the array
$json = '{"query ":[ '.$json.']}';?>