PHP4.2/PHP4.4サポートは2008年11月末日にて提供終了となりました.PHP機能につきましては引き続き PHP5サポートにて対応させていただきます.この文書はお客様がPHP4.2/4.4およびPHP5のバージョン間の 差異を確認する際に情報として利用できるよう一定の期間掲示を継続させていただきますが, 現在稼働しているPHPバージョンは5となりますので,そちらの仕様の確認につきましてはPHP5の 仕様ページを確認いただけますようお願いいたします.

この仕様はスタンダード、パワー、ビジネスサービス用のものです。それ以外のサービスでは仕様が異なりますので、ご注意ください。記載されていないサービスにつきましては契約者管理メニューより正規のマニュアルの仕様解説ページへアクセスしてください。
この仕様詳細はお客様側で 利用する PHP ベースバージョンを 「PHP 4.4ベース」に選定している場合のものとなります. 「PHP 4.2ベース(標準)」を選定している場合には,PHP 4.2ベース仕様詳細を参照してください.現在,どちらのPHPベースを利用しているかはWebコントロールパネルにて確認が可能です.

▼register_globals の設定について
http://www.php.gr.jp/history/release_4_1_0.html (セキュリティ:新しい入力方式)

PHP 4.1.0 より、PHP のグローバル変数扱い仕様を把握しないまま、プログラマのグローバル変数の扱いの失敗により潜在的なセキュリティホールを生み出しやすい問題への対応として、上記のような新しいメカニズムが導入されました。
PHP 4.2が主流であった時代には,まだこの新しい入力方式は定着しておらず,多くの混乱がありましたため,弊社でも既存の「PHP 4.2」では,互換性を考慮してregister_globals は 「On」にて提供しておりましたが, その後,新しい入力方式が定着し,ほぼメジャーなオープンソースプログラムでは,新しい入力方式に 対応が完了している状況から,PHP 4.4ベースでは register_globals は 「Off」で提供しています. このため, お客様におかれましては,PHP 4.2ベースからPHP 4.4ベースへの切り替えを行う場合には事前に, 新しい入力方式に対応している必要がございます.切り替えの前に設置プログラムの対応をご確認くださいますようお願い致します.
以下のような新しい入力方式を使ったコードをお書き頂くことで対応が可能となります.

$_GET - GETを通じて送信された内容が格納されます
$_POST - POSTを通じて送信された内容が格納されます
$_COOKIE - HTTPクッキーの内容が格納されます
$_SERVER - サーバ変数の内容が格納されます(例:REMOTE_ADDR)
$_ENV - 環境変数が格納されます
$_REQUEST - GET, POST, クッキーの内容が格納されます。言い換えますと、ユーザから送信された全ての情報ということです。セキュリティ的側面 から見ると必ずしも信頼できるものではありません。
$_SESSION - セッションモジュールにより登録された内容が格納されます

詳細につきましてはPHPの関連サイト,参考書籍などをご参考いただけますようお願い致します.

▼PHP 4.2とPHP 4.4との言語仕様の差異について PHP 4.2とPHP 4.4では言語仕様などの差異があります.このため,PHP 4.2ベースで稼動していたPHPプログラムをPHP 4.4ベースでそのまま稼動できない場合がございます.稼動させるにはプログラム側の対応が必要となる場合があります.あらかじめ設置PHPプログラムのサポート元にご相談いただき,対応の必要,対応方法などをお問い合わせいただきますようお願い致します.
▼mbstring/mbregex 機能
弊社PHP4では、日本語の扱いを容易にするため、PHP 4.0.6 よりサポートされた mbstring および 外部提供モジュール mbregex を組み込んでいます。
機能の既定値は以下のように設定されています。(これらは、ini_set 関数でユーザ側である程度の変更が可能です。(後述)

Multibyte (Japanese) Support enabled
http input encoding translation enabled

DirectiveDefaultValue
mbstring.detect_order auto
mbstring.http_input auto
mbstring.http_output SJIS
mbstring.internal_encoding EUC-JP
mbstring.substitute_characterno value

mbregex
DirectiveDefaultValue
mbregex.encoding EUC-JP

mbstring.http_output をあらかじめ SJIS に設定しておりますが、 標準では、出力には変換ハンドラを経由しないように設定にしておりますので、基本的に 日本語は、PHP4 を記述したコード(およびPHP4 内での内部扱いコードに設定してあるEUC のまま出力されます。 変換ハンドラを経由しないのは、互換性などの事由におきますものです。 ユーザが PHP4 に、出力時に自動的に出力をシフトJISにしたい場合には、コード内で変換ハンドラを利用するようにコーディングする必要があります。

※ なお、PHP4 においてコード自体は EUC で書くことが必須となっています。 あらかじめコードをシフトJISで書くことは、PHP4 において導入された Zendパーサ の対応が不十分のためかなり高い確率で誤動作の引き金となりますので 推奨されておりません。

▼エラーレポート
データベース接続時や、ファイルオープン時などに発生するようなエラーはエラーレポートとして通常実行されるブラウザに結果としてレポートされます。

エラー発生時にブラウザへのレポートがふさわしくない場合、ini_set 関数により"display_errors"を "Off" に設定することで出力を抑制することが可能です。

▼動作カスタマイズ
PHP4 より、ini_set 関数を使うことでユーザがある程度の動作をカスタマイズすることが出来るようになりました。 ini_set 関数で変更することが出来る php 動作の設定は以下のようなものがあります。
http://www.php.net/manual/ja/function.ini-set.php
※ PHP_INI_ALL のもののみ。
※ PHP_INI_ALL のものでもPHPの仕様により有効にならないものもあります。
  有効性を十分検証した後ご利用ください。

これにより、ユーザは PHP3 のときに比べ PHP の動作をカスタマイズ出来るようになりましたが、誤ったカスタマイズは、そのユーザのセキュリティホールに結びついたり動作に多大な影響を与えることがあるため、十分注意して利用するようにしてください。
このカスタマイズに関するサポートおよび動作保証は、弊社では行いません。
またカスタマイズによっておきる不都合や一切の損害に関しては当社は責任を負いかねます。自己責任でのご利用をお願いいたします。

▼GD機能
弊社PHP4では、GD 機能をサポートしています。 GD 2.0.28 をベースに弊社にてPHP4用に最適化したバージョンのgdライブラリをphp4に直接組み込む形で実装しています。 この実装方式により、弊社サーバに入っている標準のgdライブラリ(1.3)に影響されることなくphp4 において 最新のgd機能がサポートされます。 また、このバージョンのGDは、gif イメージの操作もサポートされています。

弊社PHP4 の GD機能でサポートされている特徴。
・ PHP4 の GD 機能における PNG イメージ操作関数
・ PHP4 の GD 機能におけるJPEG イメージ操作関数
・ PHP4 の GD 機能におけるGIF イメージ操作関数
・ TrueType フォントを利用したイメージへの日本語文字列の埋め込み。

▼日本語組み込み

日本語組み込みについては TTF 出力のみ対応しています。 弊社であらかじめ用意してあるTTF フォントは次の通りです。

/usr/local/share/fonts/ttf/sazanami-gothic.ttf フリーな日本語TrueTypeフォント(ゴシック)
/usr/local/share/fonts/ttf/sazanami-mincho.ttf フリーな日本語TrueTypeフォント(明朝)

フォントライセンスの都合で弊社で用意しているフォントは上記の2つのみとなりますが、ユーザがライセンス的な問題をクリアしている場合、ユーザ領域に TrueType フォントをコピーしてそちらをユーザーが任意で指定することも可能です。
※ 旧来よりフリーな日本語フォントとして幅広く利用されていました wadlab-gothic.ttf, watanabe-mincho.ttf につきましては保守上の問題がありましたため,互換性のためファイル名は保持し,それぞれ さざなみフォントのエイリアスとなるようにしています。

▼ionCubeローダ 2008/01/23よりionCubeローダを導入しています.ionCube PHP Encoderによりエンコードされたアプリケーションが動作可能となります。 ▼phpinfo機能
インストールされている PHP4 のスペック詳細を知りたい場合には、phpinfo 関数を利用して確認してください。




Copyright Admiral System Inc. All rights reserved.