Ubuntu PHPの文字化けコードを解決する方法

PHPz
リリース: 2023-04-24 14:59:28
オリジナル
879 人が閲覧しました

Ubuntu php コード文字化けの解決策

Ubuntu を使用して PHP 開発環境を構築すると、コード文字化けの問題が発生する可能性があります。この問題はプロの Web 開発者にとってはそれほど大きな問題ではありませんが、初心者にとっては非常に難しい問題となる可能性があります。この記事では、UbuntuでPHPが文字化けする問題を解決する方法を紹介します。

  1. 問題を特定する

まず、文字化けしたコードの問題を特定する必要があります。 PHPでは、HTMLページ、データベースストレージ、ファイルの読み書きなど、さまざまな場所で文字化けが発生することがあります。したがって、最初に具体的な文字化けの問題を特定する必要があります。

HTML ページに表示される場合は、次のメタ タグをページに追加して文字セットを指定できます。

<meta charset="utf-8">
ログイン後にコピー

データベース ストレージに表示される場合は、文字セットを指定できます。データベース接続 文字セット:

$conn = mysqli_connect('localhost', 'username', 'password', 'db_name');
mysqli_set_charset($conn, 'utf8');
ログイン後にコピー

ファイルの読み取りおよび書き込みに表示される場合は、ファイルを開くときに文字セットを指定できます:

$file = fopen('example.txt', 'r');
stream_filter_append($file, "convert.iconv.utf-8/cp936");
ログイン後にコピー
  1. 文字セットを決定します
#コード化けの問題を特定した後、使用する文字セットをさらに決定する必要があります。他のすべてが正しくても文字セットが間違っている場合、文字化けは引き続き発生します。通常、utf-8 が最もよく使用される文字セットです。 PHP コードで次のコードを使用すると、現在の文字セットを確認できます。

echo ini_get('default_charset');
ログイン後にコピー
現在の文字セットが utf-8 でない場合は、php.ini でデフォルトの文字セットを utf-8 に変更できます。ファイル。

    php.ini ファイルを変更する
php.ini ファイルを変更するには、ターミナルに次のコマンドを入力します:

sudo nano /etc/php/7.2/apache2/php.ini
ログイン後にコピー
PHP を使用する場合はこちら7.2 および Apache2 たとえば、具体的なバージョンは実際の状況に応じて変更されます。ファイルパスもインストール方法によって異なる場合があります。

次に、次のコード行を見つけてコメントを外し、utf-8 に変更します。

; default_charset = "UTF-8"
default_charset = "utf-8"
; input_encoding = "UTF-8"
; output_encoding = "UTF-8"
ログイン後にコピー
上記のコードが php.ini ファイルに存在しない場合は、次のコードを追加する必要があることに注意してください。それを手動で。

    Apache の再起動
php.ini ファイルを変更した後、変更を有効にするために Apache を再起動する必要があります。ターミナルに次のコマンドを入力して Apache を再起動します。

sudo service apache2 restart
ログイン後にコピー
    Test
Apache を再起動した後、文字化けの問題が解決したかどうかをテストする必要があります。テスト用の単純な PHP ファイルを作成できます。たとえば、次の内容を含む、index.php という名前のファイルを作成します。




    <meta charset="utf-8">
    测试乱码问题




ログイン後にコピー
次に、ブラウザでファイルにアクセスし、コード化けの問題がないかどうかを確認します。

    その他の解決策
上記のどの方法でもコード文字化けの問題を解決できない場合は、次の方法も試すことができます:

    MySQL 構成ファイルがデフォルトの文字セットを utf-8 として指定しているのと同じ方法で変更します。
  • コード内で iconv() 関数を使用して、文字セットを utf-8 に変換します。文字セットが不確実である 次に、mb_detect_encoding() 関数を使用して文字セットを自動的に検出します。
  • まとめ
Ubuntuを使ってPHP開発環境を構築する場合、よくある問題が文字化けです。通常、この問題は、文字セットを指定し、php.ini ファイルを変更することで解決できます。これらの方法のいずれも問題を解決できない場合は、さらにデバッグと最適化を行うために、PHP と関連テクノロジをより深く理解する必要があります。

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

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