PHP マニュアル
前のページ | 付録 D. PHP/FI 2 から PHP 3 への移行 | 次のページ

# その他の互換性

- PHP 3.0 の Apache モジュールは、もはや バージョン 1.2 以前の Apache をサポートしません。Apache 1.2 以降が必要となります。

- echo() はもはやフォーマット文字列をサポート しません。printf() 関数を使って下さい。

- PHP/FI 2.0 では、実装面に起因する副作用として、`$foo[0]` が `$foo` と同じ値になるということ がありました。これは PHP 3.0 では等しくなくなりました。

- `$array[]` で配列を読み込む機能は、もはや サポートされません。

  すなわち、`$data = $array[]` といったループで 配列の中身を取り出すことはできないということです。この代わりに current() と next() を 使って下さい。

  また、`$array1[] = $array2` では `$array2` の値を `$array1` に追加すること にはならず、`$array1` の最後のエントリに `$array2` を追加することになってしまいます。 多次元配列のサポートを参照してください。

- `"+"` は、もはや文字列の連結演算子にはならず、 その代わりにその引数を数値に変換して数値の加算を行ってしまいます。 `"."` を使用してください。

例 D-11. 2.0 からの移行：文字列の連結

`echo "1" + "1";`

PHP 2.0 ではこれで 11 が表示されますが、PHP 3.0 ではこれは 2 になります。代わりに次のようにして下さい。

`echo "1"."1";`

`$a = 1; $b = 1; echo $a + $b;`

これは PHP 2.0 でも 3.0 でも 2 になります。

`$a = 1; $b = 1; echo $a.$b;`

これは PHP 3.0 では 11 になります。

前のページ | ホーム | 次のページ
関数の `TRUE`/`FALSE` 返り値 | 上に戻る | PHPのデバッグ