首頁  >  文章  >  後端開發  >  怎麼解決php部分亂碼問題

怎麼解決php部分亂碼問題

藏色散人
藏色散人原創
2021-03-30 10:15:092360瀏覽

php部分亂碼的解決方法:1、用Dreamweaver新建檔案;2、在mysql裡設定為utf8的字元集;3、在index.php的開頭要寫「content="text/html ; charset=utf-8」。

怎麼解決php部分亂碼問題

本文操作環境:Windows7系統、PHP7.1版,DELL G3電腦

# php的部分亂碼問題集的解決方法

今天我終於開始自己寫一個完整的web模板系統,是從零開始寫起的,以前做網站都是透過網路下載一個模板,然後修改頁面和部分動態程式碼,然後就ok了,但今天不一樣了,是從頭開始,因而這個我的畢業設計,哈哈,沒辦法,我的畢業設計的題目是「基於php技術的企業網站的模板設計”,因而我今天開始寫mvc的一些測試類,當然,首先從網上下載一個基於php的MVC留言本實例,這個實例有6個程序文件:分別是index.php程式入口,notebook.htm留言表單,然後新建一個資料夾,裡面有Model.php,View.php,Controller三個檔案分別實作MVC三個功能,還有一個DataAccess.php(是一個簡單的資料庫存取類別),一開始我是透過系統右鍵新建文字檔來新建php檔案的,這裡需要提醒一下初學者,不要這樣新建php文件,因為這樣會導致中文亂碼的,正確的方法是透過Dreamweaver新建,然後在導覽選單「編輯」-> ;“首選參數”->“新建文檔”裡,把預設編碼設定為“Unicode(UTF-8)”,“包括Unicode簽名(BOM)”的複選框去掉,就可以解決在調用php類別時,類別中需要用到return方法來返回靜態頁時,如果你不是按照以上的方式去做,有可能出現亂碼;

亂碼問題:

1、在index.php呼叫到View.php的方法時,在取得中文的時候出現亂碼,解決方法,就是用Dreamweaver新建,依上述操作,可以解決亂碼問題;

2、由於我用的是utf-8的字元集,所以mysql裡也要設定為utf8的字元集,如mysql的連接校對:utf8_general_ci,而表裡的字段的字元集是utf8_unicode_ci,在index.php的開頭要寫上e487370a058720f3593d960fb2d8f75b,然後再DataAccess.php裡如下所示:

<?php
class DataAccess {
    var $link_id; //用于存储数据库连接
    var $query_id; //用于存储查询源
    //! 构造函数.
    function __construct($host,$user,$pass,$db) {
        $this->link_id=mysql_pconnect($host,$user,$pass); //连接数据库服务器
        mysql_select_db($db,$this->link_id);              //选择所需数据库
        mysql_query("SET NAMES &#39;utf8&#39; ",$this->link_id);
    }
    function query($sql) {
        $this->query_id=mysql_unbuffered_query($sql,$this->link_id); // Perform query here
        if ($this->query_id) return true;
        else return false;
  }
    function fetchRows($sql) {
   $this->query($sql);
   $arr=array();
   $i=0;
   while( $row=mysql_fetch_array($this->query_id,MYSQL_ASSOC) )   {  
  $arr[$i]=$row;
  $i++;
    }
    return $arr;
    }
}
?>

按照上面的操作基本你能解決從mysql讀出的資料不會出現亂碼。

【推薦學習:PHP影片教學

#

以上是怎麼解決php部分亂碼問題的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn