php面向對象常用函數總結

1. class_alias — 爲類創建一個別名
------------------------------------------------
   格式:bool class_alias ([ string $original [, string $alias ]] )
   示例:
       class foo { }
       class_alias('foo', 'bar');

       $a = new foo;
       $b = new bar;
       // the objects are the same
       var_dump($a == $b, $a === $b);  //bool(true)
       var_dump($a instanceof $b);        //bool(false)

       // the classes are the same
       var_dump($a instanceof foo);    //bool(true)
       var_dump($a instanceof bar);    //bool(true)

       var_dump($b instanceof foo);    //bool(true)
       var_dump($b instanceof bar);    //bool(true)

*2. class_exists — 檢查類是否已定義
-----------------------------------------------------------
   格式: bool class_exists ( string $class_name [, bool $autoload ] )
       --如果由 class_name 所指的類已經定義,此函數返回 TRUE,否則返回 FALSE。

       默認將會嘗試調用 __autoload,如果不想讓 class_exists() 調用 __autoload,
       可以將 autoload 參數設爲 FALSE。

3. get_called_class — the "Late Static Binding" class name
---------------------------------------------------------------------
   (PHP 5 >= 5.3.0)  獲取調用者的類名

*4. get_class_methods — 返回由類的方法名組成的數組
----------------------------------------------------------------------
   格式:array get_class_methods ( mixed $class_name )
       返回由 class_name 指定的類中定義的方法名所組成的數組。如果出錯,則返回 NULL。

       從 PHP 4.0.6 開始,可以指定對象本身來代替 class_name

5. get_class_vars — 返回由類的默認公有屬性組成的數組
-----------------------------------------------------------------------
   格式: array get_class_vars ( string $class_name )
       返回由類的默認公有屬性組成的關聯數組,此數組的元素以 varname => value 的形式存在。

*6. get_class — 返回對象的類名
-----------------------------------------------------------------------
   格式: string get_class ([ object $obj ] )
       返回對象實例 obj 所屬類的名字。如果 obj 不是一個對象則返回 FALSE。

7. get_declared_classes — 返回由已定義類的名字所組成的數組
--------------------------------------------------------------------------
   格式:array get_declared_classes ( void )
       返回由當前腳本中已定義類的名字組成的數組。

8. get_declared_interfaces — 返回一個數組包含所有已聲明的接口
--------------------------------------------------------------------------
   格式:array get_declared_interfaces ( void )
       本函數返回一個數組,其內容是當前腳本中所有已聲明的接口的名字。

9. get_object_vars — 返回由對象屬性組成的關聯數組
------------------------------------------------------------------
   格式:array get_object_vars ( object $obj )
       返回由 obj 指定的對象中定義的屬性組成的關聯數組。

10. get_parent_class — 返回對象或類的父類名
------------------------------------------------------------------
   格式:string get_parent_class ([ mixed $obj ] )
       如果 obj 是對象,則返回對象實例 obj 所屬類的父類名。

11. interface_exists — 檢查接口是否已被定義
------------------------------------------------------------------
   格式:bool interface_exists ( string $interface_name [, bool $autoload ] )
       本函數在由 interface_name 給出的接口已定義時返回 TRUE,否則返回 FALSE。

*12. is_a — 如果對象屬於該類或該類是此對象的父類則返回 TRUE
   我們可以使用運算符: instanceof代替上面的is_a操作
------------------------------------------------------------------
   格式:bool is_a ( object $object , string $class_name )
       如果對象是該類或該類是此對象的父類則返回 TRUE,否則返回 FALSE。

13. is_subclass_of — 如果此對象是該類的子類,則返回 TRUE
------------------------------------------------------------------
   格式:bool is_subclass_of ( object $object , string $class_name )
       如果對象 object 所屬類是類 class_name 的子類,則返回 TRUE,否則返回 FALSE。

*14. method_exists — 檢查類的方法是否存在
--------------------------------------------------------------------
   格式:bool method_exists ( object $object , string $method_name )
       如果 method_name 所指的方法在 object 所指的對象類中已定義,則返回 TRUE,否則返回 FALSE。

*15. property_exists — 檢查對象或類是否具有該屬性
--------------------------------------------------------------------
   格式:bool property_exists ( mixed $class , string $property )
       本函數檢查給出的 property 是否存在於指定的類中(以及是否能在當前範圍內訪問)。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章