アフィリエイト、副業を支援する為の情報、その他色々なお役立ち情報発信サイトです。
情報ビジネス支援クラブ
  • トップページ
    Infomation
  • 副業
    SideBusiness
    • FX
    • ブログアフィリエイト
    • ポイントサイト
  • ワードプレス
    WordPress
    • Cocoon
  • Win
    Windows
    • Tools
    • Excel VBA
  • プログラミング
    Programming
    • PHP
    • Javascript
    • html
  • スマホ
    Android
    • スマホゲーム
    • 計測
  • ランキング
    Ranking
    • ビジネス・稼ぐ|総合
    • 投資・仮想通貨|総合
    • Internet・AccessUp|総合
    • 生活|総合
    • 美容・健康|総合
    • 学習・自己啓発|総合
    • エンターテイメント|総合
    • コミュニケーション・恋愛|総合
  • 特典付き
    Present
    • 特典付き
    • 無料オリジナルツール1
    • 無料オリジナルツール2
    • 無料オリジナルツール3
    • 無料オリジナルツール4
    • 無料オリジナルツール5
    • 無料オリジナルツール6
ホーム
PHP
XSERVER である日突然PHPのプログラムで文字化け!

XSERVER である日突然PHPのプログラムで文字化け!

2019.07.30 2018.11.02

サーバーのバージョンアップで、PHPの環境に変化!?
数年前にEUC-JPで作成したホームページが急に文字化けしてしまいました。
そこで、調査と対処方法を説明します。

  1. XSERVERのPHPでEUC-JPの文字化け対処 結論
    1. EUC-JPのPHPコード対処前
    2. EUC-JPのPHPコード対処後
  2. XSERVERのPHPでShift-JISの文字化け対処 結論
    1. Shift-JISのPHPコード対処前
    2. Shift-JISのPHPコード対処後
  3. XSERVERのPHPで文字化けを起こす原因
  4. XSERVERのPHPが文字化けを起こす原因
  5. XSERVERのPHPが文字化けを起こす対処

XSERVERのPHPでEUC-JPの文字化け対処 結論

次のphpのコード1行をなるべく先頭の方に入れるこで解決しました。

header("Content-Type:text/html;charset=EUC-JP");

例として対処前と対処後を載せます。

EUC-JPのPHPコード対処前

<?PHP
echo "EUC-JPで保存したPHPファイル<br>\n";
echo "あいうえおかきくけこさしすせそたちつてと<br>\n";
?>

このコードをアクセスすると
こんな感じで文字化けを起こしています。

EUC-JPのPHPコード対処後

PHPファイルの先頭の方にheader()関数のcharsetで使用する文字コードを指定する。

<?PHP
header("Content-Type:text/html;charset=EUC-JP");

echo "EUC-JPで保存したPHPファイル<br>\n";
echo "あいうえおかきくけこさしすせそたちつてと<br>\n";
?>

この対処後のコードをアクセスすると
文字化けは解消されています。

XSERVERのPHPでShift-JISの文字化け対処 結論

次のphpのコード1行をなるべく先頭の方に入れるこで解決しました。

header("Content-Type:text/html;charset=Shift-JIS");

これも例として対処前と対処後を載せます。

Shift-JISのPHPコード対処前

<?PHP
echo "Shift-JISで保存したPHPファイル"<br>\n";
echo "あいうえおかきくけこさしすせそたちつてと"<br>\n";
?>

このコードをアクセスすると
こんな感じで文字化けを起こしています。

Shift-JISのPHPコード対処後

この場合もPHPファイルの先頭の方にheader()関数のcharsetで使用する文字コードを指定する。

<?PHP
header("Content-Type:text/html;charset=Shift-JIS");

echo "Shift-JISで保存したPHPファイル"<br>\n";
echo "あいうえおかきくけこさしすせそたちつてと"<br>\n";
?>

この対処後のコードをアクセスすると
文字化けは起こりません。

XSERVERのPHPで文字化けを起こす原因

実際にホームページがあるXSERVERのフォルダのPHPがどのような設定なのか確認します。

<?PHP
  phpinfo();
?>

このソースを文字化けが起きているサーバーのフォルダへphp_info.phpとか言うファイル名でアップロードして
アクセスしてみます。

default_charset が「UTF-8」になってました。

XSERVERのPHPが文字化けを起こす原因

文字コードを「UTF-8」で使用するなら全く問題はないのですが、
それ以外の文字コードを使用すると文字化けを起こすおそれがあります。

XSERVERのPHPが文字化けを起こす対処

そこで通常の対策として「php.ini」を書き換えればよいことです。

ここでXSERVERのマニュアルをよく見ると
「PHP高速化設定(FastCGI)」を有効にしているので、PIPを直接編集しても適用されない!
「php.ini設定」で行うように指示されてます。

そこでXSERVERのサーバーパネルから「php.ini」設定のページを開くと
何と、default_charsetの設定項目が有りません。
default_charsetの変更不可能。
おそらくPHP高速化設定では、個別ドメイン毎の「default_charset」設定は出来ない方針でしょう

取り敢えず
「mbstring.internal_encoding」に使用する文字コードを設定しておきます。
この設定だけでは、やはり文字化けは直りません。

php.ini以外で「default_charset」の設定するには、
.htaccessに次のコードを追加することで変更可能なはずです。
EUC-JPなら

php_value default_charset "EUC-JP"

Shift-JISなら

php_value default_charset "Shift-JIS"

.htaccessで「default_charset」の変更を試みましたが、サーバーエラーではねられてしまいました。

結局、PHP高速化設定中は、ドメイン毎に「default_charset」を変更するという小細工は効かないという結論です。

面倒でも、各PHPのファイルの先頭ではheader()関数で charsetを指定する必要があります。
と言うか、今後UTF-8以外のコードを使用する場合は、必ずheader()関数で charsetを指定する習慣付けをする必要があるみたいです。



PHP
EUC-JP PHP Shift-JIS Xserver 文字化け
シェアする
Twitter Facebook はてブ Pocket LINE Pinterest
staffをフォローする
staff
情報ビジネス支援クラブ

関連記事

PHP

PHP 配列の連結 通常配列と連想配列、array_merge と +連結の違い

<?php // 通常配列のarray_merge(添え字'2'が重複する二つの配列の場合) $array1 = array( 1=>"aaa", 2=>"bbb" ) ; $array2 = array...
PHP

PHP 周期的にPHPを走らせる

サーバで周期的にスクリプトを起動 と言えば、簡単な方法としてサーバのCron機能を使えば実現できます。 Cronとは 読み方は、「クロン」「クーロン」「クローン」「シーロン」と様々です。 UNIX、Linuxの常駐プログラムの一...
PHP

php ヒアドキュメント構文を使う

複数行の文字列を表示したり、変数へ代入する場合は、ヒアドキュメント構文を使うと便利です。 ヒアドキュメントの構文 構文の2行目から識別子;の前までの文字列(破線部分)を、代入先へ代入します。 識別子は、代入する文字列の...
PHP

PHP 配列をそのままファイルに保存、読み込み

<?php // 配列の中身をファイルに保存 file_put_contents("test.dat", serialize($dataArray)); //配列をファイルから読み込み $dataArray =...
PHP

PHP 超簡易 形態素解析の元のもと

形態素解析とは 文章を構成されている品詞(名詞、動詞、助動詞、副詞、形容詞、接続詞・・・)など最小単位に分離して解析すること。 AIの会話解析や、自動翻訳とか、幅広い分野で応用されています。 私的用途でも、大手検索会社がA...
PHP

PHPで絶対パスを取得する方法

ファイルをinclude、requireする場合、そのファイルの絶対パスが必要な場合があります。 絶対パスは、レンタルサーバにより異なり、またサブドメインの場合とか、なかなか分かりにくい時がが有ります。 そんな時に簡単に調べる方...
Cocoonでブログカードの抑制方法
ブログアフィリエイト必須 広告ランダム表示AdRandom準備編

よく読まれてる記事

ONUから光ケーブルの外し方
2018.07.222018.09.16
DVD,Blu-rayプレーヤー/レコーダの再生録画不良を改善する
2019.10.24
Windows10 ロック画面の画像を削除する方法
2018.07.282018.09.16
ダイソー精密ドライバーは六角や星型のドライバーも入っててんこ盛り
2019.10.23
VBA 失敗しない文字列をクリップボードへコピーする方法
2019.11.29
防水規格IPxxの等級の確認、シャワーはOK!でもお風呂はNG!
2018.12.282019.11.29
「このページに安全に接続できません」Webブラウザのセキュリティ問題
2018.08.062018.09.16
Visual Studio Code でHtml・CSSをプレビュー
2019.02.28
Excel 選択したセルを自動コピー
2018.11.28
SF Expressの荷物の配送状況を確認する
2018.10.26

最近の投稿

php.iniの設定を変えずに強制的に日本時間を取得する
2019.10.31
php ヒアドキュメント構文を使う
2019.10.30
Visual Studio CodeでPHPデバッグ
2019.02.13
WindowsにPHPをインストールする
2019.02.122019.02.17
XSERVER である日突然PHPのプログラムで文字化け!
2018.11.022019.07.30
PHPで絶対パスを取得する方法
2018.10.25
超簡単!テキストをクリップボードへコピー
2018.10.202018.10.29
YouTube Data API v3 で動画の検索 実践編
2018.10.13
YouTube Data API v3 で動画の検索 準備編
2018.10.12
PHP GDライブラリを使用したサーバー上で画像加工 その2
2018.10.11




カテゴリー

  • Linux1
  • MySQL1
  • PHP26
  • Windows44
    • Excel VBA11
    • Tools17
  • WordPress57
    • Cocoon17
  • その他26
    • パソコン3
    • プログラミング5
      • html1
      • Javascript2
    • 文具2
    • 生活16
  • サーバー4
  • スマホ30
    • スマホゲーム14
    • 計測1
  • ノウハウ情報9
    • インターネット・アクセスアップ1
    • エンターテイメント1
    • コミュニケーション・恋愛1
    • ビジネス・稼ぐ1
    • 学習・自己啓発1
    • 投資・仮想通貨1
    • 生活1
    • 美容・健康1
  • 副業38
    • FX2
    • トラフィックエクスチェンジ2
    • ブログアフィリエイト20
    • ポイントサイト13
  • 特典付き23

無料プレゼント

無料オリジナルツール1「オートリライトRW」

無料オリジナルツール1 オートリライトRW

オートリライトRWを無料プレゼント
他では手に入らない、当サイトオリジナル開発プログラム「オートリライトRW」を無料でプレゼントします。
オートリライトRWとは
文章を自動でリライトするプログラムです。
既存する記事を参考に…

info-biz.club
2018.04.21

無料オリジナルツール2「Auto Article Posting Program Lite」

無料オリジナルツール2 Auto Article Posting Program Lite
Auto Article Posting Program Lite
WordPressの記事を自動で作成して投稿するツールを無料で差し上げます。

当サイトの特典付きリンクより商品をお買い上げ頂い方に、特典として無料で差し上げます。
…

info-biz.club
2018.04.18

無料オリジナルツール3「TwCreator」

無料オリジナルツール3 TwCreator
TwCreator
Twitterにツイートする「つぶやき」を自動で作成するツールを無料で差し上げます。
当サイトの特典付きリンクより商品をお買い上げ頂い方に、特典として無料で差し上げます。
お買い上げしたその場ですぐにダウンロードす…
info-biz.club
2018.04.18

無料オリジナルツール4「AdRandom」

無料オリジナルツール4広告ランダム表示プログラムAdRandom
WordPress用 広告ランダム表示プログラムを無料プレゼント
他では絶対手に入らない、当サイトオリジナル開発プログラム
WordPress広告ランダム表示プログラム「AdRandom」
を無料でプレゼントします。
このプログ…
info-biz.club
2018.10.30

無料オリジナルツール5「情報収集ツールCollectInfoEX」

無料オリジナルツール5 情報収集ツール CollectInfoEX
情報収集ツール CollectInfoEX
キーワードの候補や、
記事の原稿となる情報の収集などで、
情報を手早く収集できるツールを無料で差し上げます。
このツールも他のツール同様、
当サイトのオリジナルです。
他では、入手でき…
info-biz.club
2018.11.16

無料オリジナルツール6「キーワード選択ツールSelectKeywordEX」

無料オリジナルツール6 キーワード選択ツールSelectKeywordEX
【下克上∞(MUGEN)】~トレンドアフィリエイト教材~用キーワードツール

トレンドアフィリエイト教材「下剋上∞」を進めていく上で、最強に威力を発揮するキーワードツール

「SelectKeywordEX」を無料で差し上げます。
…

info-biz.club
2018.12.12

 

 

 

お役立ち情報検索

【ビジネス・稼ぐ】総合ランキング

【投資・仮想通貨】総合ランキング

【インターネット・アクセスアップ】総合ランキング

【生活】総合ランキング

【美容・健康】総合ランキング

【学習・自己啓発】総合ランキング

【エンターテイメント】総合ランキング

【コミュニケーション・恋愛】総合ランキング

サイト利用上の注意事項

サイト利用上の免責事項

サイトへのリンクについて

プライバシーポリシー

サイトマップ

 

無料オリジナルツール1「オートリライトRW」
無料オリジナルツール2「Auto Article Posting Program Lite」
無料オリジナルツール3「TwCreator」
無料オリジナルツール4「AdRandom」
無料オリジナルツール5「情報収集ツールCollectInfoEX」
無料オリジナルツール6「キーワード選択ツールSelectKeywordEX」


お役立ち情報検索

【ビジネス・稼ぐ】総合ランキング

【投資・仮想通貨】総合ランキング

【インターネット・アクセスアップ】総合ランキング

【生活】総合ランキング

【美容・健康】総合ランキング

【学習・自己啓発】総合ランキング

【エンターテイメント】総合ランキング

【コミュニケーション・恋愛】総合ランキング


サイト利用上の注意事項

サイト利用上の免責事項

サイトへのリンクについて

プライバシーポリシー

サイトマップ

情報ビジネス支援クラブ
© 2018 情報ビジネス支援クラブ.
    • トップページ
    • 副業
      • FX
      • ブログアフィリエイト
      • ポイントサイト
    • ワードプレス
      • Cocoon
    • Win
      • Tools
      • Excel VBA
    • プログラミング
      • PHP
      • Javascript
      • html
    • スマホ
      • スマホゲーム
      • 計測
    • ランキング
      • ビジネス・稼ぐ|総合
      • 投資・仮想通貨|総合
      • Internet・AccessUp|総合
      • 生活|総合
      • 美容・健康|総合
      • 学習・自己啓発|総合
      • エンターテイメント|総合
      • コミュニケーション・恋愛|総合
    • 特典付き
      • 特典付き
      • 無料オリジナルツール1
      • 無料オリジナルツール2
      • 無料オリジナルツール3
      • 無料オリジナルツール4
      • 無料オリジナルツール5
      • 無料オリジナルツール6
  • ホーム
  • トップ
  • よく読まれてる記事

    ONUから光ケーブルの外し方
    2018.07.222018.09.16
    DVD,Blu-rayプレーヤー/レコーダの再生録画不良を改善する
    2019.10.24
    Windows10 ロック画面の画像を削除する方法
    2018.07.282018.09.16
    ダイソー精密ドライバーは六角や星型のドライバーも入っててんこ盛り
    2019.10.23
    VBA 失敗しない文字列をクリップボードへコピーする方法
    2019.11.29
    防水規格IPxxの等級の確認、シャワーはOK!でもお風呂はNG!
    2018.12.282019.11.29
    「このページに安全に接続できません」Webブラウザのセキュリティ問題
    2018.08.062018.09.16
    Visual Studio Code でHtml・CSSをプレビュー
    2019.02.28
    Excel 選択したセルを自動コピー
    2018.11.28
    SF Expressの荷物の配送状況を確認する
    2018.10.26

    最近の投稿

    php.iniの設定を変えずに強制的に日本時間を取得する
    2019.10.31
    php ヒアドキュメント構文を使う
    2019.10.30
    Visual Studio CodeでPHPデバッグ
    2019.02.13
    WindowsにPHPをインストールする
    2019.02.122019.02.17
    XSERVER である日突然PHPのプログラムで文字化け!
    2018.11.022019.07.30
    PHPで絶対パスを取得する方法
    2018.10.25
    超簡単!テキストをクリップボードへコピー
    2018.10.202018.10.29
    YouTube Data API v3 で動画の検索 実践編
    2018.10.13
    YouTube Data API v3 で動画の検索 準備編
    2018.10.12
    PHP GDライブラリを使用したサーバー上で画像加工 その2
    2018.10.11




    カテゴリー

    • Linux1
    • MySQL1
    • PHP26
    • Windows44
      • Excel VBA11
      • Tools17
    • WordPress57
      • Cocoon17
    • その他26
      • パソコン3
      • プログラミング5
        • html1
        • Javascript2
      • 文具2
      • 生活16
    • サーバー4
    • スマホ30
      • スマホゲーム14
      • 計測1
    • ノウハウ情報9
      • インターネット・アクセスアップ1
      • エンターテイメント1
      • コミュニケーション・恋愛1
      • ビジネス・稼ぐ1
      • 学習・自己啓発1
      • 投資・仮想通貨1
      • 生活1
      • 美容・健康1
    • 副業38
      • FX2
      • トラフィックエクスチェンジ2
      • ブログアフィリエイト20
      • ポイントサイト13
    • 特典付き23