當前位置:首頁 » 編程語言 » php顯示中文

php顯示中文

發布時間: 2023-01-01 00:01:31

php JSON格式的中文顯示問題解決方法

返回json數據中文顯示的問題
上一篇文章中,返回json格式的中文顯示成\u5723\u8bde\u8282\u5343\u4e07\u597d\u793c\u5927\u5949\u9001
解決方法一:
復制代碼
代碼如下:
<?php
function
Notice(){

include
'./include/conn.php';
//資料庫鏈接文件

$sql_notice
=
mysql_query('SELECT
*
FROM
gg_notice
where
enable
=
"1"
limit
0,10');

$notice
=
mysql_fetch_array($sql_notice,
MYSQL_ASSOC);

$str
=
json_encode($notice);

//linux

return
preg_replace("#\\\u([0-9a-f]{4})#ie",
"iconv('UCS-2BE',
'UTF-8',
pack('H4',
'\\1'))",
$str);

//windows

//return
preg_replace("#\\\u([0-9a-f]{4})#ie",
"iconv('UCS-2LE',
'UTF-8',
pack('H4',
'\\1'))",
$str);

}
?>
另外從網上搜索到的其他方法
復制代碼
代碼如下:
<?php
/**
*
json
生成,分析
支持中文
*/
class
Json_Helper
{

/**

*
生成json

*/

public
static
function
encode($str){

$json
=
json_encode($str);

//linux

return
preg_replace("#\\\u([0-9a-f]{4})#ie",
"iconv('UCS-2BE',
'UTF-8',
pack('H4',
'\\1'))",
$json);

//windows

//return
preg_replace("#\\\u([0-9a-f]{4})#ie",
"iconv('UCS-2LE',
'UTF-8',
pack('H4',
'\\1'))",
$json);

}

/**

*
分析json

*/

public
static
function
decode($str)
{

return
json_decode($str);

}
}
?>

Ⅱ PHP顯示中文亂碼

如果你的資料庫表建立時候指定的字元集是UTF8,你現在網頁已經是UTF8了,剩下就是要求插入數據和查詢數據的PHP文件裡面,連接資料庫後進行插入和查詢之前要SET NAMES UTF-8即可,以上四個地方的代碼都統一以後,就能插入漢字、顯示漢字。

Ⅲ php顯示中文亂碼,phpmyadmin里的MySQL資料庫中文亂碼,如何解決

將瀏覽器中的編碼改成utf-8,資料庫中也是。在php頁面首行加上header("Content-type: text/html; charset=utf-8");,必須首行,前面不能有輸出。
還有,在查詢資料庫時加上:mysql_query(set names utf-8);

Ⅳ php為何在網頁上中文顯示亂碼

1、這個是典型的編碼問題。
2、在php文件第一行代碼前加上header("Content-type:text/html;charset=utf-8「);這一句就可以正常顯示了。

Ⅳ php顯示中文亂碼

php資料庫中文亂碼的解決辦法:1、創建資料庫時,規定字元類型為uft8;2、創建表時,規定字元類型為utf8;3、在PHP的MySQL連接函數中,添加語句「mysql_query("set names 'utf8'")。

Ⅵ php為什麼在網頁上中文顯示亂碼

網頁上的中文顯示亂碼,一般是編碼不一致,PHP文件需要根據自己文件的編碼(UTF還是ASCII),設置對應的header語句,使得瀏覽器以正確的編碼顯示,否則就會亂碼。

Ⅶ php 輸出json及顯示json中的中文漢字詳解及實例

php
輸出json及顯示json中的中文漢字
在php中,我們經常需要將數組輸出json,只需要使用json_encode函數處理一下數組即可,但有的時候數組裡面有中文,使用json_encode函數處理後中文字元被編碼成了Unicode,如何才能在json中顯示中文呢?請看下文。
首先介紹一下php輸出json格式:
一種最簡單的用法,就是把數組直接輸出為json,如下:
<?php
$arr
=
array('p1'=>'ni"hao','p2'=>2,'ch'=>'碼農你好!');
$json
=
json_encode($arr);
echo
$json;
?>
輸出的結果為:
{"p1":"ni\"hao","p2":2,"ch":"\u7801\u519c\u4f60\u597d\uff01"}
這里要注意:
雙引號在json中會被自動編碼為\",這個很好理解,js中字元串中是不允許出來單引號、雙引號和反斜杠的。
中文字元被編碼成了Unicode
如果是寫介面,那直接這樣輸出就夠了,中文無需去做處理。等到了客戶端,再去把Unicode的中文轉成漢字即可。但如果要在伺服器端直接輸出漢字出來,那我們可以做如下處理。
<?php
$arr
=
array('p1'=>'nihao','p2'=>2,'ch'=>'碼農你好!');
$json
=
json_encode($arr);
echo
decodeUnicode($json);
function
decodeUnicode($str){
return
preg_replace_callback('/\\\\u([0-9a-f]{4})/i',
create_function(
'$matches',
'return
mb_convert_encoding(pack("H*",
$matches[1]),
"UTF-8",
"UCS-2BE");'
),
$str);
}
?>
輸出:
{"p1":"ni\"hao","p2":2,"ch":"碼農你好!"}
這個操作很簡單,其實就是把輸出結果匹配一下,把Unicode還原成了漢字。
感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

Ⅷ 為什麼我的php輸出的中文是亂碼

是你的頁面
編碼
有問題!
你這個是不是
還沒有用到
資料庫
啊?
那應該就是
你的
IE瀏覽器的
編碼
跟你
頁面的編碼不統一!
你應該先判斷你的
頁面是
什麼編碼
然後再把
IE的編碼換成
你的頁面
編碼!那就可以了!

Ⅸ 我的PHP頁面無法顯示中文了,怎麼搞的

避免頁面出現亂碼,最好保持所有資源的編碼統一,以GB2312為例:
1. PHP文件本身保存成GB2312.如果你用的是Dreamweaver,設置默認編碼為GB2312,DW默認的是UTF-8
2. 輸出的HTML代碼的HEAD里應該有<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
3. 如果你只是測試,沒有寫HEAD、BODY這些HTML代碼,就在PHP里加上 header("Content-Type: text/html; charset=gb2312"); 保證瀏覽器以GB2312編碼分析你的HTML
4. 在瀏覽器里設置默認編碼為GB2312(瀏覽器默認的是UTF-8).這樣即使你沒有在PHP或HTML設定編碼,也會以GB2312方式解析
5. 資料庫應該以GB2312編碼創建,否則應該在連接資料庫後執行一句SQL語句: SET NAMES GBK;,確保讀取出來的內容是GBK編碼的。

Ⅹ 使用php時顯示的中文變成了一堆亂碼,有什麼辦法讓中文不變亂碼

網頁分內碼外碼。內碼就是<meta
http-equiv="content-type"
content="text/html;
charset=utf-8"
/>
外碼就是你保存為記事本的時候所選擇的文本編碼,你要將二者統一。
如果你的網頁編碼是UTF8
那麼你可以嘗試將php文件以記事本的格式打開,並保存為utf8格式。
如果是GBK或gb2312
則保存為ansi
格式
則就不會出現亂碼的問題。

熱點內容
解壓玩具怎麼做只用水就可以做 發布:2025-07-01 20:52:56 瀏覽:159
解壓放鬆室 發布:2025-07-01 20:52:43 瀏覽:124
存儲器壞了 發布:2025-07-01 20:46:11 瀏覽:510
iphone怎麼設鎖屏密碼 發布:2025-07-01 20:46:10 瀏覽:620
伺服器如何處理千萬請求 發布:2025-07-01 20:30:53 瀏覽:332
plsqldeveloperjob 發布:2025-07-01 20:29:59 瀏覽:803
剪切文件用什麼配置 發布:2025-07-01 20:23:07 瀏覽:41
酷睿2020主要看哪些配置 發布:2025-07-01 20:23:06 瀏覽:259
sql保存文件 發布:2025-07-01 20:18:52 瀏覽:802
安卓做的登錄頁面怎麼運行 發布:2025-07-01 20:18:48 瀏覽:813