ホームページ  >  記事  >  バックエンド開発  >  PHP クラスに関するいくつかの知識ポイント_PHP チュートリアル

PHP クラスに関するいくつかの知識ポイント_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 09:47:16889ブラウズ

PHPクラスに関するいくつかの知識ポイント

1. クラス定義

リーリー

クラスを複数のファイルで定義したり、クラス定義を複数の PHP ブロックに分割したりすることはできません (関数内で分割することはできます)。

という名前のクラスを定義できません 標準クラス
__睡眠
__目覚め
実際、__ で始まるクラスを定義しないでください。

2.コンストラクター

リーリー

クラスにコンストラクターがない場合は、基本クラスのコンストラクターが呼び出されます。
コンストラクターのパラメーターにはデフォルト値を割り当てることができます

リーリー

@new はコンストラクター内で発生するエラーを抑制できます。

3.クラスの利用

リーリー

クラスは内部で $this を使用して自身を表します。

4. クラス関連の機能

__autoload — 未定義のクラスのロードを試みます
call_user_method_array — パラメーターの配列を渡してユーザー メソッドを呼び出します (非推奨)
call_user_method — 特定のオブジェクトでユーザー メソッドを呼び出す (非推奨)
class_alias — クラスのエイリアスを作成する
class_exists — クラスが定義されているかどうかを確認します
get_called_class — 「Late Static Binding」クラスの名前
get_class_methods — クラスメソッド名で構成される配列を返します
get_class_vars — クラスのデフォルト属性の配列を返します
get_class — オブジェクトのクラス名を返します
get_declared_classes — 定義されたクラスの名前の配列を返します
get_declared_interfaces — 宣言されたすべてのインターフェースを含む配列を返します
get_declared_traits — 定義されたすべての特性の配列を返します
get_object_vars — オブジェクトプロパティの連想配列を返します
get_parent_class — オブジェクトまたはクラスの親クラス名を返します
interface_exists — インターフェイスが定義されているかどうかを確認します
is_a — オブジェクトがこのクラスに属している場合、またはこのクラスがこのオブジェクトの親クラスである場合に TRUE を返します
is_subclass_of — このオブジェクトがこのクラスのサブクラスである場合に TRUE を返します
Method_exists — クラスメソッドが存在するかどうかを確認します
property_exists — オブジェクトまたはクラスにプロパティがあるかどうかを確認します
trait_exists — 指定された特性が存在するかどうかを確認します

5.継承

リーリー

PHP は多重継承をサポートしていません。

6.静的メソッド

リーリー

7. 基本クラスの参照親

リーリー

8.連載

リーリー

9.魔法の関数 __sleep __wakeup

10. オブジェクトのプロパティへの配列アクセスを許可します

方法1

関数obj2array(obj){
return new ArrayObject(obj, ArrayObject::ARRAY_AS_PROPS);
}
このメソッドは比較的単純ですが、もう 1 つのメソッドは ArrayAccess を継承するために少し複雑です。

11. オブジェクトへの配列

リーリー

12 自己実装のシリアル化と逆シリアル化

Redis で使用するとさらに便利です:

リーリー

www.bkjia.com本当http://www.bkjia.com/PHPjc/1027126.html技術記事 PHPクラスに関する豆知識 1. クラス定義項目[$artnr += $num; }} クラスは複数のファイルに定義することはできません。また、クラス定義を複数のPHPブロックに分割することはできません(関数内で分割することは可能です)。 。 ...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。