PHP バージョンの PHP5.2.x ~ 5.3.x、php5.2.x5.3.x_PHP チュートリアル

WBOY
リリース: 2016-07-12 09:06:10
オリジナル
1163 人が閲覧しました

PHP5.2.xから5.3.x、php5.2.x5.3.xのPHPバージョン

下位互換性のない変更

1. 新しい内部パラメーター解析 API は、5.3 のすべてのバインディング拡張機能に適用されます。互換性のないパラメーターが関数に渡されると、NULL が返されますが、関数 get_class() がエラー時に FALSE を返すなど、いくつかの例外があります。発生します

2. Clearstatcache() はデフォルトでキャッシュされたリアルパスをクリアしなくなりました。

3. 配列関数 natsort()、natcasesort()、usort()、uksort()、array_flip()、および array_unique() は、パラメーターとしてオブジェクトを受け入れなくなります。

4. パラメーターを参照によって渡す関数は、値によって呼び出されるときに動作が変わります。以前は値によって渡されたパラメータを受け入れていた関数は致命的なエラーをスローするようになりました。以前はパススルー アプリケーションを予期していたが、呼び出されたときに定数またはリテラル値を渡していた関数は、呼び出す前に変数に値を割り当てる必要があります。

5. 新しい mysqlnd ライブラリは、MySQL 4.1 の新しい 41 バイトのパスワード形式を使用する必要があります。古い 16 バイトのパスワードを使用し続けると、mysql_connect() および他の同様の関数が「mysqlnd は古い認証を使用して MySQL 4.1 以降に接続できません」というエラーをスローします。

6. 新しい mysqlnd ライブラリは、古いバージョンの libmysql ライブラリとは異なり、MySQL 設定ファイル (my.cnf/my.ini) を読み取りません。コードがこれらの設定ファイルに依存している場合は、mysqli_options を使用できます。 () これを明示的にロードします。これは、PDO での MySQL サポートが mysqlnd でコンパイルされている場合、PDO 固有の定数 PDO::MYSQL_ATTR_READ_DEFAULT_FILE および PDO::MYSQL_ATTR_READ_DEFAULT_GROUP が未定義になることを意味します。

7. __​​toString() マジック メソッドはパラメータを受け入れなくなりました。

8. マジック メソッド __get、__set、__isset、__unset、__call は常に public である必要があり、static にすることはできません。

9. プライベートメソッドとプロテクトメソッドにアクセスするときに __call マジックメソッドが呼び出され、静的メソッドは __callStatic を使用します。

10. ファイルが関数に含まれるか、関数に必要な場合、func_get_arg()、func_get_args()、および func_num_args() 関数はそのファイル内で使用できません。

11. 予約済みキーワード: goto、名前空間

新機能

1. 名前空間のサポートを追加します

2. 静的遅延バインディング (遅延静的バインディング) のサポートを追加します

静的バインディングの投稿:

原則: 前回の「非転送コール」のクラス名が保存されます。静的メソッド呼び出しを行う場合、クラス名は明示的に指定されたクラス名 (:: 演算子の左側のクラス) であり、非静的メソッド呼び出しを行う場合は、オブジェクトが属するクラスです。

「遅延バインディング」とは、static::が現在のメソッドが定義されているクラスに解析されず、実際の実行時に計算されることを意味します。

いわゆる「転送呼び出し」とは、self::、parent::、static::、および forward_static_call() メソッドによる静的呼び出しを指します。

get_called_class() 関数を使用して、呼び出されたメソッドのクラス名を取得できます。

http://php.net/manual/zh/ language.oop5.late-static-bindings.php

3. 制限付きジャンプタグのサポートを追加します

4. ネイティブ クロージャのサポート、通常はコールバック関数として使用される匿名関数を追加しました。

5. 2 つの新しいマジック メソッド、__callStatic と __invoke

__callStatic: アクセスできないメソッドを静的に呼び出すときに使用されます。

__invoke このメソッドは、関数を呼び出してオブジェクトを呼び出そうとしたときに自動的に呼び出されます。

6. Nowdoc 構文のサポートを追加しました。これは Heredoc 構文に似ていますが、一重引用符が含まれています。

7. Heredoc を使用して静的変数、クラス属性、定数を初期化します。

8. const キーワードを使用して、クラスの外で定数を宣言できます。

9. 三項演算子の短縮形は $b = $a==1 ?

10. HTTP ストリーム ラッパーは、200 から 399 までのすべてのステータス コードを成功とみなします。

11. 静的メソッドに動的にアクセスする

12. 例外を埋め込むことができます

13. 循環参照用のガベージ コレクターが追加され、デフォルトで有効になります

14. Mail() はメール送信ログをサポートします。

SAPIモジュールの変更

@TODO

PHP 5.3非推奨の機能

1. PHP5.3 では 2 つの新しいエラー レベルが追加されます:

<code><strong>E_DEPRECATED</strong>E_DEPRECATED

は、関数が非推奨になったことを示します

<strong>E_USER_DEPRECATED </strong>

E_USER_DEPRECATED

ユーザー コード内の非推奨の機能を示します

2. 廃止された関数PHP バージョンの PHP5.2.x ~ 5.3.x、php5.2.x5.3.x_PHP チュートリアル

関連ラベル:
p php
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート