PHPの文字化け問題を解決する方法

藏色散人
リリース: 2023-03-09 08:16:01
オリジナル
2363 人が閲覧しました

php の文字化けの解決策: 1. Dreamweaver を使用して新しいファイルを作成する; 2. mysql で文字セットを utf8 に設定する; 3. ファイルの先頭に "content="text/html" を記述するIndex.php ; charset=utf-8".

PHPの文字化け問題を解決する方法

この記事の動作環境: Windows 7 システム、PHP バージョン 7.1、DELL G3 コンピューター

PHP のコード化けの問題のいくつかに対する解決策

今日、ついに完全な Web テンプレート システムを自分で書き始めました。最初から始めました。以前は、ウェブサイトにアクセスして、インターネットからテンプレートをダウンロードしました。その後、ページといくつかの動的コードを修正しました。その後は問題ありませんでしたが、今日は違います。ゼロから始めたので、これは私の卒業制作です、はは、まさかのタイトル私の卒業制作は「PHP テクノロジーをベースにした企業 Web サイトのテンプレート デザイン」なので、今日から MVC のテスト クラスをいくつか書き始めました。もちろん、最初に PHP ベースの MVC ゲストブック インスタンスをインターネットからダウンロードしました。このインスタンスには 6 つのプログラムがありますファイル:index.php プログラム エントリ、notebook.htm メッセージ フォーム、そして新しいフォルダーを作成します。このフォルダーには、MVC の 3 つの機能をそれぞれ実装する Model.php、View.php、Controller の 3 つのファイルと、DataAccess.php が含まれます。 (これは単純なデータベース アクセス クラスです。) 最初に、「システムは新しいテキスト ファイルを右クリックして、新しい php ファイルを作成します。初心者は、文字化けを引き起こすため、このような php ファイルを作成しないように注意してください。」を渡しました。中国語の文字。正しい方法は、Dreamweaver で新しい文字を作成し、ナビゲーション メニューの [編集] -> [優先パラメータ] -> [新しいドキュメント] を選択し、デフォルトのエンコードを「Unicode (UTF-8)」に設定することです。上記の方法に従わない場合、静的ページに戻るためにクラス内で return メソッドを使用する必要がある場合、PHP クラスを呼び出すときの問題を解決するには、「Unicode 署名 (BOM) を含める」のチェックボックスを削除します。 , コード化けが発生する可能性があります;

コード化けの問題:

1.index.php が View.php のメソッドを呼び出すと、中国語を取得するときに文字化けが発生します。 Dreamweaver を使用して新しいものを作成します。コード化けの問題を解決するには、上記の操作に従ってください。

2. utf-8 の文字セットを使用しているため、mysql も utf8 文字に設定する必要がありますたとえば、mysql の接続校正は utf8_general_ci で、テーブル内のフィールドの文字セットは utf8_unicode_ci です。index.php の先頭に、 < meta http-equiv="Content-Type" content= と記述します。 "text/html; charset=utf-8" /> を 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 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
php
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート