PHP怎么返回 json 数据,JavaScrtip 又是怎么解析 Json 的?

PHP  Json  

JSON:JavaScript 对象表示法(JavaScript Object Notation)。


JSON 是存储和交换文本信息的语法。类似 XML。

JSON 比 XML 更小、更快,更易解析。

JSON 指的是 JavaScript 对象表示法(JavaScript Object Notation)。

JSON 是轻量级的文本数据交换格式。

JSON 独立于语言。

* JSON 使用 JavaScript 语法来描述数据对象,但是 JSON 仍然独立于语言和平台。JSON 解析器和 JSON 库支持许多不同的编程语言。


PHP 有专门的 json 编码函数

json_encode() 


json_encode 对变量进行 JSON 编码 

(PHP 5 >= 5.2.0, PECL json >= 1.2.0) 


Report a bug 说明 

string json_encode ( mixed $value [, int $options = 0 ] ) 

返回 value 值的 JSON 形式 


Report a bug 参数 


value 

待编码的 value ,除了resource 类型之外,可以为任何数据类型。


该函数只能接受 UTF-8 编码的数据。


$sql="SELECT  * FROM tablename"; 
$result=mysql_query($sql,$sqlConnect); 
$json=array(); 
while($row =  mysql_fetch_array($result)){ 
    array_push($json,$row);
} 
echo json_encode($json);


JavaScript 有自带 Json 解析功能


  • JSON - 转换为 JavaScript 对象;

  • JSON 文本格式在语法上与创建 JavaScript 对象的代码相同;

  • 由于这种相似性,无需解析器,JavaScript 程序能够使用内建的 eval() 函数,用 JSON 数据来生成原生的 JavaScript 对象。


假设上面的PHP页面返回的内容如下:

 [

{ "firstName":"Bill" , "lastName":"Gates" },

{ "firstName":"George" , "lastName":"Bush" },

{ "firstName":"Thomas" , "lastName":"Carter" }

]


可以用如下代码读取相关信息:

var jsondata ='[{"firstName":"Bill","lastName":"Gates"},{"firstName":"George","lastName":"Bush"},{"firstName":"Thomas","lastName":"Carter"}]';
var json = eval(jsondata);
alert(json[0].firstName);


时间:2017年03月09日    作者:孟德    分类:前端   浏览:2214    评论:0

链接地址:https://www.abclogs.com/ui_php_json_encode_decode.html