① php如何輸出中文json格式字元串
php如何輸出中文json格式字元串
如何對json格式的字元串進行轉換,php提供了兩個函數:
json_encode 對變數進行 JSON 編碼
json_decode 對 JSON 格式的字元串進行編碼
下面看個實例:
$arr = ['a', 'b', 'c'];echo json_encode($arr);
輸出為:
["a","b","c"]
但是,當我們在數組中放入中文的時候,就會出現問題:
$arr = [ '世界', '你好',
];echo json_encode($arr);
輸出的結果為:
["\u4e16\u754c","\u4f60\u597d"]
這個結果顯然不是我們想要的,但是為什麼出現這個呢?
因為當我們的值中包含中文時,php對他進行json編碼時底層會對中文進行unicode編碼,導致結果不可讀,那該怎麼解決呢?
方法一
可以利用 urlencode 和 urldecode 方法繞過這個轉碼為 unicode 的過程,先將中文欄位進行urlencode,然後json_encode,最後再用urldecode處理結果,便可以正常顯示中文。具體代碼如下:
$arr = [ '世界', '你好',
];echo urldecode(json_encode(array_map('urlencode', $arr)));
輸出結果為:
["世界","你好"]
方法二
自PHP5.4版本,官方就已經給Json新增了一個選項: JSON_UNESCAPED_UNICODE。加上這個選項後,就不會自動把中文編碼了。具體代碼如下:
$arr = [ '世界', '你好',
];echo json_encode($arr, JSON_UNESCAPED_UNICODE);
["世界","你好"]
看吧,這才是我們想要的結果 :)
② php讀取json並輸出
$json = json_decode($file_contents);
//print_r($json);
$status = $json->data->status;
echo "status=".$title."<br>";
$boy=$json->data;
//print_r($boy);
$message = '';
foreach($json->data->boy as $v){
$message .= $v->data.' '.$v->type."\r\n";
}
echo "message".$message."<br>";
③ php+mysql資料庫取數據轉成json格式
PHP取Mysql數據並轉換為json格式,這很簡單
過程分為取數據-保存為數組-json格式輸出三步
取數據分為連接與查詢(條件等),參考下面文章
保存為數組也容易,array_push就行
json格式的輸換最為便捷,只需echo json_encode($myArr);
輸出的就是你要的json格式,就像你圖中的那樣
參考文章:http://snowcoal.com/article/568.html
④ json.php里得到返回數據怎麼輸出到html里
用json_decode()將json字元串轉化成php數組,然後直接循環數組取出值即可。
<?php
$content= file_get_contents('獲取json字元串的url');
$content = json_decode($content);//將json字元串轉化成php數組
foreach ($content as $key ) {//循環數組
echo '<li>' . $key['city'] . '</li>';
echo '<li>' . $key['city_en'] . '</li>';
echo '<li>' . $key['date_y'] . '</li>';
echo '<li>' . $key['week'] . '</li>';
}
⑤ php,我想把資料庫內容做成json格式,數據有換行符,去掉換行符輸出後檢測還是會換行。
1:PHP中可以用PHP_EOL來替代,以提高代碼的可移植性
因為換行在不同系統會有不同的表現形式
在unix系列用 \n
在windows系列用 \r\n
在mac用 \r
2:例如
$content=str_replace(PHP_EOL,"",$content);
⑥ 如何在PHP中返回Json數據
不對。
返回json用的json_encode()方法沒錯,但是需要在頭部聲明格式。
php返回需要用json_encode()方法來將需要轉換的字元串轉換成json編碼格式(注意:僅僅更換文件內容,而返回的文件依然為文本格式且編碼為gtk)
所以,這里需要在php頭部聲明
header('Content-Type:text/json;charset=utf-8');
JSON(JavaScriptObject Notation, JS 對象簡譜) 是一種輕量級的數據交換格式。它基於ECMAScript(歐洲計算機協會制定的js規范)的一個子集,採用完全獨立於編程語言的文本格式來存儲和表示數據。簡潔和清晰的層次結構使得 JSON 成為理想的數據交換語言。 易於人閱讀和編寫,同時也易於機器解析和生成,並有效地提升網路傳輸效率。
json通常被作為配置文件,常見還有.ini
⑦ php 將json格式數據轉換成數組的方法
如下所示:
//json格式數據
$data
=
'[{
"F_MoleId":
"1",
"F_ParentId":
"0",
"F_EnCode":
"SysManage",}]';
//轉換成數組
$arr
=
json_decode($data,true);
//輸出
var_mp($arr);
以上這篇php
將json格式數據轉換成數組的方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
您可能感興趣的文章:PHP使用JSON和將json還原成數組在PHP語言中使用JSON和將json還原成數組的方法PHP實現數組轉JSon和JSon轉數組的方法示例php
json轉換成數組形式代碼分享php數組轉成json格式的方法
⑧ php怎麼輸出json數組
對於特定的不能使用json_decode的json的話,建議直接輸出
比如:
<?php
echo'{';
//假設你的數據是從資料庫中讀取
$query=mysql_query(查詢語句);
while($row=mysql_fetch_array($query)){
echo$row['欄位'];//在這里構造出json顯示的數據
}
echo'}';
?>
希望可以幫到你
⑨ 如何將JSON字元串格式化輸出
一般在項目中,我們可能會經常需要對返回結果進行格式化處理,比如先把返回結果對象轉換為JSON格式的字元串,然後再將其輸出。這個JSON格式化處理的過程,我們在前端或者後端都可以實現。
在JavaScript中,我們如果需要將js對象轉換為json字元串,可以通過 JSON.stringify() 來實現。
相反,如果需要將json字元串轉換為js對象,可以通過 JSON.parse() 來實現。
在Python3中,我們如果需要將Python對象轉換為json字元串,可以通過 json.mps() 來實現。
相反,如果需要將json字元串轉換為Python對象,可以通過 json.loads() 來實現。
⑩ 用php如何將數據(文本和圖片)轉換成json格式
json和php數組 格式的互相轉換,參考如下:
$php_json = json_encode($json_arr); //把php數組格式轉換成 json 格式的數據
echo $php_json;
$php_json = json_decode($php_json); //再把json格式的數據轉換成php數組
print_r($php_json);
json數組
$json = '[{"id":"22","name":"33","descn":"44"}]'; //json格式的數組轉換成 php的數組
$arr = (Array)json_decode($json);
echo $arr[0]->id; //用對象的方式訪問。