
| ・ |
ドキュメントセンターを初めてご利用する方や運営方針についての基本的な姿勢をご覧になりたい方へ。
|
| ご利用の皆様から多く寄せられる質問にお答えしています。 |
|
| ・ |
ディーエーオフィスなどが利用する用語に関する解説を行います。
|
|
|
 |
 |  |
lfsettings encodeCheck |
encodeCheckは、各アプリケーションの基本作業をこなすコードです。コードの入出力エンコードを把握するためのもので、それぞれの値は基本的に自動処理する構造になっていますが、外部のエンコードは明示的に指定し、文字化けを防ぎます。
ロジックファクトリーでは、内部処理をEUC-JPで統一しています。このため、現時点での実装はこのポリシーを基に、すべての処理を行っています。
通常は、直接呼び出すことはありません。返値は出力エンコード名になりますが、この返値が使われるようなコーディングは行った例がありません。それぞれの変数に格納され、それを参照するのが基本的なポリシーです。
内部で利用可能な変数は次の通りです。
$this->code_enc は、アプリケーション内部のエンコードです。ロジックファクトリーでは、内部処理をEUC-JPで統一しているので、値は必ずEUC-JPとなります。
$this->output_enc は、出力時のエンコードを指定します。$g_encodeで指定したエンコード名が採用されます。指定しないときは、自動検出を行います。
以上を頻繁に利用し、次に照会するものは互換もしくは試験的な実装ですので、今後その実装は再考する予定です。
$this->input_enc は、入力時のエンコードを指定します。
$this->enc は、過去のアプリケーションと整合性をとるためのものです。基準となる外部エンコードを指定しています。下位互換性の維持が目的で、今後この変数は利用できなくなります。
---
■文例
$g_encode = "sjis";
■サンプル
$g_encode = "eucjp";
■書式一覧
$g_encode = "eucjp,EUC-JP,sjis,SJIS";
それぞれ、外部エンコードを指定します。指定がないときは、エンコードを自動取得します。しかしながら、アプリケーションの構造上、ほとんどのコードはEUC-JPで構成しており、その自動取得ではEUC-JPとなってしまいます。呼び出しているPHPファイルがSJISで構成されているときは、その場所で検出を行うわけではないので、EUC-JPとSJISのエンコードが混在することになり、文字化けが発生します。これを防止するために、明示的な指定を行うようになった歴史的背景があります。
|
| 文書番号 |
01763 |
| 日付 |
2004.08.21 |
| 参照数 |
329 |
|