① php使用json_encode將資料庫里的整張表轉成json格式的問題
JSON(javaScript Object Notation) 是一種輕量級的數據交換格式,我們稱之為JavaScript對象表示法。使用JSON進行數據傳輸的優勢之一是JSON實際上就是JavaScript。
你試試下面兩個
1>
$arr = array(
0 => array("id" => 1, "name" => "abc")
);
echo json_encode($arr);
2>
$arr = array("id" => 1, "name" => "abc");
echo json_encode($arr);
② php生成數組轉成json後,在轉化為對象
你可以參考一下我的建議,1.普通:若php關聯數組不含有中文,直接json_encode轉換。轉換之後用json_deconde($stuJson)轉為php對象。
<?php
$stu = array("name"=>"li","age"=>"35");
$stuJson = json_encode($stu);
還有什麼疑問的話,可以多去後盾們看一下相關的視頻,這樣你更清楚
③ php如何解析這種JSON
目前,JSON已經成為最流行的數據交換格式之一,各大網站的API幾乎都支持它。
從5.2版本開始,PHP原生提供json_encode()和json_decode()函數,前者用於編碼,後者用於解碼。
一、json_encode()
該函數主要用來將數組和對象,轉換為json格式。先看一個數組轉換的例子:
$arr = array ('a'=>1,'b'=>2,'c'=>3,'d'=>4,'e'=>5);
echo json_encode($arr);
結果為
{"a":1,"b":2,"c":3,"d":4,"e":5}
由於json只接受utf-8編碼的字元,所以json_encode()的參數必須是utf-8編碼,否則會得到空字元或者null。當中文使用GB2312編碼,或者外文使用ISO-8859-1編碼的時候,這一點要特別注意。
二、索引數組和關聯數組
PHP支持兩種數組,一種是只保存"值"(value)的索引數組(indexed array),另一種是保存"名值對"(name/value)的關聯數組(associative array)。
由於javascript不支持關聯數組,所以json_encode()只將索引數組(indexed array)轉為數組格式,而將關聯數組(associative array)轉為對象格式。
比如,現在有一個索引數組
$arr = Array('one', 'two', 'three');
echo json_encode($arr);
結果為:
["one","two","three"]
三、類(class)的轉換
下面是一個PHP的類: class Foo { const ERROR_CODE = '404'; public $public_ex = 'this is public'; private $private_ex = 'this is private!'; protected $protected_ex = 'this should be protected'; public function getErrorCode() { return self::ERROR_CODE; } }
現在,對這個類的實例進行json轉換:
$foo = new Foo;
$foo_json = json_encode($foo);
echo $foo_json;
輸出結果是
{"public_ex":"this is public"}
可以看到,除了公開變數(public),其他東西(常量、私有變數、方法等等)都遺失了。
④ json數組對象怎麼在php中定義
$jsonStr=json_encode($array); //(這個是你輸出的字元串)
$myArr=json_decode($jsonStr, true));
$a=$myArr['lng'];
$b=$myArr['lat'];
php 內置的函數,數組和Json格式的數據相互轉換
json_encode 數組轉換成json格式的字元串
json_decode json格式的字元串轉換成數組
也可以用js處理
⑤ PHP 語言 怎麼把 JSON 字元串轉為對象
使用json_decode函數就可以,只帶一個參數(字元串的JSON文本)
你可以去後盾人平台看看,裡面的東西不錯
⑥ php如何返回json對象呢
返回json用的json_encode()方法沒錯,但是需要在頭部聲明格式。
代碼解析
php返回需要用json_encode()方法來將需要轉換的字元串轉換成json編碼格式(注意:僅僅更換文件內容,而返回的文件依然為文本格式且編碼為gtk)
所以,這里需要在php頭部聲明
header('Content-Type:text/json;charset=utf-8');
拓展內容
json
JSON(JavaScript Object Notation, JS 對象簡譜) 是一種輕量級的數據交換格式。它基於 ECMAScript (歐洲計算機協會制定的js規范)的一個子集,採用完全獨立於編程語言的文本格式來存儲和表示數據。簡潔和清晰的層次結構使得 JSON 成為理想的數據交換語言。 易於人閱讀和編寫,同時也易於機器解析和生成,並有效地提升網路傳輸效率。
json通常被作為配置文件,常見還有.ini
0
⑦ php 怎麼 字元串 轉 json對象
需要准備的材料分別是:電腦、php編輯器、瀏覽器。
1、首先,打開php編輯器,新建php文件,例如:index.php,裡面定義了個一個json字元串。
⑧ 在PHP使用json_encode
Json
做為一種輕量級的數據交換格式,開始受到親睞,有與
XML
搶地盤的風頭。而讓人高興的是,php也把
json
序列化數據的功能內置成函數了,這讓想使用json的
PHPCoder
備感方便。
美中不足的是,json_encode
/
json_decode
系列函數只有在
php5.2
以上才有。這讓立志開發兼容性強的PHP系統的coder很頭痛。
幸好,已經有人把
json
的方法封裝成
php4.x
系列甚至更低的版本都可以執行的類了。這里要先謝謝先驅了。讓我們可以踩在巨人的肩膀上走向成功。
這里了解更多:http://code.itlearner.com/php/JSON-class.html
使用方法:
if(
function_exists("json_encode")
)
{
return
json_encode($phparr);
}
else
{
require_once
ROOT."include/json.class.php";
$json
=
new
Services_JSON;
return
$json->encode($phparr);
}
⑨ JSON PHP中,Json字元串反序列化成對象/數組的方法
如下所示:
<?php
//php反編碼解析json信息
//json_decode(json字元串);
$city
=
array('shandong'=>'jinan','henan'=>'zhengzhou','hebei'=>'shijiazhuang');
$jn_city
=
json_encode($city);
//反編碼json
$fan_city
=
json_decode($jn_city,false);//第二個參數false則返回object類型,false可以默認不寫
var_mp($fan_city);//object(stdClass)#1
(3)
{
["shandong"]=>
string(5)
"jinan"
["henan"]=>
string(9)
"zhengzhou"
["hebei"]=>
string(12)
"shijiazhuang"
}
echo
"<br
/>";
$fan_city
=
json_decode($jn_city,true);//第二個參數true則返回array類型
var_mp($fan_city);//array(3)
{
["shandong"]=>
string(5)
"jinan"
["henan"]=>
string(9)
"zhengzhou"
["hebei"]=>
string(12)
"shijiazhuang"
}
手動寫的JSON字元串一定要用單引號才能成功反序列化成對象/數組:
<?php
//json信息反編碼
//不同php版本,對「純json字元串」解析存在問題
//使用雙引號定義的json字元串反編碼操作變為null
//$jn
=
"{'name':'tom','age':'20','addr':'beijing'}";
//$fan_jn
=
json_decode($jn,true);
//var_mp($fan_jn);//NULL
//使用單引號定義的json字元串反編碼操作會成功
$jn
=
'{"name":"tom","age":"20","addr":"beijing"}';
$fan_jn
=
json_decode($jn,true);
var_mp($fan_jn);
以上這篇JSON
PHP中,Json字元串反序列化成對象/數組的方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
您可能感興趣的文章:C#實現JSON字元串序列化與反序列化的方法jquery序列化form表單使用ajax提交後處理返回的json數據js解析與序列化json數據(二)序列化探討Json序列化和反序列化方法解析Jquery
組合form元素為json格式,asp.net反序列化jQuery實現form表單元素序列化為json對象的方法淺析JSON序列化與反序列化JS實現json的序列化和反序列化功能示例js解析與序列化json數據(三)json的解析探討JavaScript實現的反序列化json字元串操作示例