您好,登錄后才能下訂單哦!
本篇內容主要講解“PHP統一頁面編碼避免亂碼”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“PHP統一頁面編碼避免亂碼”吧!
頁面編碼統一
MySQL數據庫編碼、html頁面編碼、PHP或html文件本身編碼要全部一致。
1、MySQL數據庫編碼:
建立數據庫時指定編碼(如gbk_chinese_ci),建立數據表、建立字段、插入數據時不要指定編碼,會自動繼承數據庫的編碼。
數據庫連接時,也有編碼,可以在連接完數據庫后,執行mysql_query(‘SET NAMES gbk');//將gbk換成你的編碼,如utf8。
2、html頁面的編碼,指的是這一行的設置:
復制代碼 代碼如下:
<meta http-equiv="Content-Type" content="text/html; charset=gbk" />
3、PHP或html文件本身的編碼:
用editplus打開php文件或html文件,另存時,選擇的編碼,如果數據庫和頁面編碼是gbk,則這兒的編碼選擇ansi;如果數據庫和頁面編碼是utf-8,則這兒也選擇utf-8。
4、Javascript或Flash中傳遞的數據是utf-8編碼:
另外要注意的是,Javascript或Flash中傳遞的數據是utf-8編碼,如果數據庫和頁面編碼是gbk,要進行轉碼,然后寫入數據庫。
復制代碼 代碼如下:
iconv('utf-8', 'gbk', $content);
5、在PHP程序中,可以加上一行,來指定PHP源程序的編碼:
復制代碼 代碼如下:
header('Content-type: text/html; charset=gbk');
php頁面編碼
1.在文件頭中設置編碼
復制代碼 代碼如下:
<?php
@header('Content-type: text/html;charset=UTF-8');
?>
2.header與meta的區別
用@header('Content-type: text/html; charset=gbk');與<meta http-equiv="Content-Type" content="text/html; charset=gbk" />的區別
他們都是告訴瀏覽器用什么編碼顯示網頁,要說有什么不同,header是發送原始 HTTP 標頭,不在網頁中留下什么,而meta是寫在網頁中。
其一,如果網頁中沒有meta,那么發送 HTTP 標頭就起作用了。
其二,用header()函數發送原始 HTTP 標頭,可以包含更多內容,設置編碼只是其中之一。
其三,有些時候不要網頁顯示什么內容,但要通知瀏覽器用什么編碼來進行后續動作。
到此,相信大家對“PHP統一頁面編碼避免亂碼”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。