PHP のコンパイル時に -enable-gd-jis-conv オプションを追加することで発生する、Zabbix 監視システムのグラフィカル インターフェイスでの中国語の文字化けの問題を解決します。 現象: PHP コンパイル パラメータ: 例: PHP が --enable-gd-jis-conv オプションを有効にしてコンパイルされている場合、非 ASCII 文字 (中国語の文字、ピンイン、ギリシャ語、矢印など) は EUC-JP 文字 (phpinfo では「JIS エンコード フォント」と呼ばれます) として扱われ、文字化けが発生します (西洋フォントにはかなや中国語の文字がないため、通常はすべて四角で表示されます)。 imagettftext() 関数は、画像に文字を書き込むために使用されます。この問題はこの関数によって発生します。 インターネットでいくつかの不完全なチュートリアルを確認しました。以下は、zabbix3.2バージョン、php7.2バージョンでの私の実稼働練習操作です。 方法1: -enable-gd-jis-conv オプションを無効にして、PHP を再コンパイルしてインストールします。この方法はコストがかかります。 方法2: 本番環境のPHPは長く使用しているため、それを使用しているアプリケーションがあるかどうかわからないため、簡単に再コンパイルすることはあえてせず、方法2に従って解決します 最初のステップ: 関数 to_entities($string){ 文字列の長さを strlen で指定します。 $buf = ""; ($i = 0; $i < $len; $i++){ (ord($string[$i]) <= 127)の場合{ $buf .= $string[$i]; } そうでない場合 (ord ($string[$i]) < 192) { //予期しない2番目、3番目、または4番目のバイト $buf .= "?"; } そうでない場合 (ord ($string[$i]) < 224) { //2バイトシーケンスの最初のバイト $buf .= sprintf("&#%d;", ((ord($string[$i + 0]) & 31) << 6) + (ord($文字列[$i + 1]) & 63) ); $i += 1; } そうでない場合 (ord ($string[$i]) < 240) { //3バイトシーケンスの最初のバイト $buf .= sprintf("&#%d;", ((ord($string[$i + 0]) & 15) << 12) + ((ord($string[$i + 1]) & 63) << 6) + (ord($文字列[$i + 2]) & 63) ); $i += 2; } それ以外 { //4バイトシーケンスの最初のバイト $buf .= sprintf("&#%d;", ((ord($string[$i + 0]) & 7) << 18) + ((ord($string[$i + 1]) & 63) << 12) + ((ord($string[$i + 2]) & 63) << 6) + (ord($文字列[$i + 3]) & 63) ); $i += 3; } } $buf を返します。 } ステップ2: ファイル内のimagettftext()関数を見つけます(合計3か所) 最後のパラメータ $string を 要約する 上記は、PHP の問題により Zabbix モニタリングのグラフィカル インターフェイスで中国語の文字化けが発生する問題を解決するために紹介した方法です。お役に立てれば幸いです。ご質問がある場合は、メッセージを残してください。すぐに返信いたします。また、123WORDPRESS.COM ウェブサイトをサポートしてくださっている皆様にも感謝申し上げます。 以下もご興味があるかもしれません:
|
>>: InnoDB テーブルの BLOB 列と TEXT 列のストレージ効率を最適化します。
{ {}} 値を取得すると、タグの元のコンテンツはクリアされませんv-textは値を取得し、タグの元...
面接官から「NodeJS で複数のプロセスを開始する方法を教えてください」と尋ねられることがあります...
fd コマンドは、Linux ファイル システムを検索するためのシンプルで簡単な方法を提供します。...
Alibaba Cloud ServerはTomcatをインストールして構成し、外部ネットワークアク...
知らせ! ! !この状況は、実際には仮想マシンのインストール中に回避できます。次回仮想マシンをテスト...
Centos yumフォルダを開くコマンドcd /etc/yum.repos.d/を入力します。 w...
目次1. はじめに2. 構成3. 作業プロセス4. 建築5. 表示例MHA (Master HA) ...
キャンバスを使ってカラフルな時計を書いてみよう! 1. タイトル(1)時計のケースが与えられ、ページ...
目次1. 変数の概要1.1 変数のメモリへの保存1.2 変数の使用1. 変数を宣言する2. 譲渡3....
今日は、データ バックアップに関連するいくつかの点について調べ、MySQL データ バックアップに関...
成果を達成する実装コードhtml <base href="https://s3-us...
ワイルドカードのカテゴリ: %パーセント ワイルドカード: 任意の文字が任意の回数出現できることを示...
1. ユーザーを追加します。まず、adduser コマンドを使用して共通ユーザーを追加します。コマン...
序文現在、私はコースウェア PPT のオンライン プレビューを必要とする高品質のコースに取り組んでい...
目次序文子コンポーネントは親コンポーネントにデータを渡す1. 親コンポーネントから子コンポーネントに...