PHPの文字化けを削除する方法

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

phpの文字化け部分を削除する方法: 1. phpファイル自体のエンコードをWebページのエンコードと一致するように設定する; 2. PHPとデータベースのエンコードを一致させるように設定する; 3. PHP関数を呼び出す際のエンコーディングを変更します。

PHPの文字化けを削除する方法

この記事の動作環境: Windows7 システム、PHP7.1 バージョン、DELL G3 パソコン

php 中国語文字化けを削除パート、文字化けしたコードに対する PHP 中国語の解決策

1。 1 つ目は、PHP Web ページのエンコーディングです。

1。PHP ファイル自体のエンコーディングと Web ページのエンコーディングは、

a と一致する必要があります。gb2312 エンコーディングを使用したい場合は、次に、PHP はヘッダーを出力する必要があります: header("Content- Type: text/html; charset=gb2312")、静的ページを追加、すべてのファイルのエンコード形式は ANSI、メモ帳で開き、名前を付けて保存し、 ANSI としてエンコードし、ソース ファイルを上書きします。

b. utf-8 エンコーディングを使用したい場合、php はヘッダー ("Content-Type: text/html; charset=utf-8") を出力し、静的ページを追加します。すべてのファイルのエンコード形式は utf-8 です。 utf-8 で保存するのは少し面倒かもしれません。通常、utf-8 ファイルは先頭に BOM が付いています。セッションを使用すると問題が発生します。editplus を使用して保存できます。editplus で [ツール] -> [編集] に移動します。パラメータの選択 -> ファイル -> UTF-8 署名で、常に削除を選択し、保存して BOM 情報を削除します。

2.php 自体は Unicode ではないため、すべての substr およびその他の関数を mb_substr (mbstring 拡張機能をインストールする必要があります) に変更するか、iconv を使用してトランスコードする必要があります。 ######二。 PHP と Mysql の間のデータ対話

#PHP とデータベースのエンコーディングは一貫している必要があります

#1. mysql 設定ファイル my.ini または my.cnf を変更します。utf8 エンコーディングを使用するのが最適です。 for mysql

[mysql]
default-character-set=utf8
[mysqld]
default-character-set=utf8
default-storage-engine=MyISAM
ログイン後にコピー

[mysqld] の下に追加します:

default-collation=utf8_bin
init_connect='SET NAMES utf8'
ログイン後にコピー

2. データベース操作を実行する必要がある PHP プログラムの前に mysql_query("set names 'coding'"); を追加します。コーディングは次のとおりです。 PHP コーディングと一致しています。PHP コーディングが gb2312 の場合、mysql エンコーディングは gb2312 です。utf-8 の場合、mysql エンコーディングは utf8 であるため、データの挿入または取得時に文字化けが発生しません。

[推奨学習:

PHP ビデオ チュートリアル

]

3. PHP はオペレーティング システムに関係します。

Windows と Linux ではエンコードが異なります。Windows 環境では、PHP 関数を呼び出す際にパラメーターが utf-8 エンコードされていると、move_uploaded_file() などのエラーが発生します。 filesize() 、 readfile() など。これらの関数は、アップロードおよびダウンロードの処理時によく使用されます。呼び出し時に次のエラーが発生する場合があります:

Warning: move_uploaded_file()[function.move-uploaded-file]:failed to open stream:
ログイン後にコピー

以上がPHPの文字化けを削除する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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