罗江游鱼
级别: 论坛版主
UID: 1234
精华: 0
发帖: 79
威望: 80 点
金钱: 790 RMB
贡献值: 0 点
注册时间:2007-11-08
最后登录:2008-04-08
楼主  发表于: 2007-12-16 13:06

 get_class_vars()、get_class ()、get_declared_classes()、get_object_vars()、get_parent_class()函数


一些子综合了好几个类的函数、并对各个函数分别做例子|其代码如下……
=======================================================================

copycode
  1. <html>
  2. <head>
  3. <title>get_class_vars()函数使用实例</title>
  4. </head>
  5. <body>
  6. <?
  7. class Dog                                //首先定义一个类
  8. {
  9.     var $name;                        //狗的名字
  10.     var $age;                            //狗的年龄
  11.     var $birthday="3/15";                    //狗的生日
  12.     var $sex="male";                    //狗的性别
  13. }
  14. $temp=array_keys(get_class_vars("Dog"));    //调用get_class_vars()函数
  15. echo "类Dog的属性有以下几个:";
  16. echo "<p>";
  17. print_r($temp);
  18. ?>
  19. </body>
  20. </html>


=====================================================================

copycode
  1. <html>
  2. <head>
  3. <title>get_class ()函数使用实例</title>
  4. </head>
  5. <body>
  6. <?
  7. class Dog                                //首先定义一个类
  8. {
  9.     var $name;                        //狗的名字
  10.     var $age;                            //狗的年龄
  11.     var $birthday;                        //狗的生日
  12.     var $sex;                            //狗的性别
  13. }
  14. $mydog=new Dog;                        //实例化一个对象
  15. $mydog->name="wang";                    //定义名字
  16. $mydog->age="two month";                //定义年龄
  17. $mydog->birthday="3/15";                    //定义生日
  18. $mydog->sex="male";                    //定义性别
  19. echo "对象mydog所属的类为:";
  20. echo get_class($mydog);                    //调用函数输出对象所属的类
  21. ?>
  22. </body>
  23. </html>
罗江游鱼
级别: 论坛版主
UID: 1234
精华: 0
发帖: 79
威望: 80 点
金钱: 790 RMB
贡献值: 0 点
注册时间:2007-11-08
最后登录:2008-04-08
1楼  发表于: 2007-12-16 13:08
===================================================================
copycode
  1. <html>
  2. <head>
  3. <title>get_declared_classes()函数使用实例</title>
  4. </head>
  5. <body>
  6. <?
  7. class Dog                                    //定义一个类Dog
  8. {
  9.     var $name;                            //狗的名字
  10.     var $age;                                //狗的年龄
  11.     var $birthday;                            //狗的生日
  12.     var $sex;                                //狗的性别
  13. }
  14. class Window                                //定义一个类Window
  15. {
  16.     var $state;                            //窗户的状态
  17.     function close_window()                    //关窗户方法
  18.     {
  19.         $this->state="close";                    //窗户的状态为关
  20.     }
  21.     function open_window()                    //开窗户方法
  22.     {
  23.         $this->state="open";                    //窗户的状态为开
  24.     }
  25. }
  26. class Who_Window extends Window            //创建Window的子类Who_Window
  27. {
  28.     var $owner;
  29.     function close_window()                    //方法继承
  30.     {
  31.         $this->state="close";
  32.         $this->owner="Jack";
  33.     }
  34. }
  35. /*至此,此PHP文件中一共定义有三个类,分别是:Dog、Window、Who_Window。
  36. 现在调用get_declared_classes()函数,看能否正确返回*/
  37. $temp=get_declared_classes();                    //调用函数,把结果保存到变量中
  38. for($i=0;$i<count($temp);$i++)                    //通过循环显示数组所有元素
  39. {
  40.     echo "数组的第".$i."个元素为:";
  41.     echo $temp[$i];
  42.     echo "<p>";
  43. }
  44. ?>
  45. </body>
  46. </html>

========================================================================

copycode
  1. <html>
  2. <head>
  3. <title>get_object_vars()函数使用实例</title>
  4. </head>
  5. <body>
  6. <?
  7. class Dog                                //首先定义一个类
  8. {
  9.     var $name;                        //狗的名字
  10.     var $age;                            //狗的年龄
  11.     var $birthday;                        //狗的生日
  12.     var $sex;                            //狗的性别
  13. }
  14. $mydog=new Dog;                        //实例化一个对象
  15. $mydog->name="wang";                    //定义名字
  16. $mydog->age="two month";                //定义年龄
  17. $mydog->birthday="3/15";                    //定义生日
  18. $mydog->sex="male";                    //定义性别
  19. $temp=get_object_vars($mydog);            //调用函数把对象的属性赋值给数组
  20. print_r($temp);
  21. ?>
  22. </body>
  23. </html>
罗江游鱼
级别: 论坛版主
UID: 1234
精华: 0
发帖: 79
威望: 80 点
金钱: 790 RMB
贡献值: 0 点
注册时间:2007-11-08
最后登录:2008-04-08
2楼  发表于: 2007-12-16 13:09
copycode
  1. <html>
  2. <head>
  3. <title>get_parent_class()函数使用实例</title>
  4. </head>
  5. <body>
  6. <?
  7. class Window                                //定义一个类Window
  8. {
  9.     var $state;                            //窗户的状态
  10.     function close_window()                    //关窗户方法
  11.     {
  12.         $this->state="close";                    //窗户的状态为关
  13.     }
  14.     function open_window()                    //开窗户方法
  15.     {
  16.         $this->state="open";                    //窗户的状态为开
  17.     }
  18. }
  19. class Who_Window extends Window            //创建Window的子类Who_Window
  20. {
  21.     var $owner;
  22.     function close_window()                    //方法继承
  23.     {
  24.         $this->state="close";
  25.         $this->owner="Jack";
  26.     }
  27. }
  28. $my_who_window=new Who_Window;            //实例化一个对象
  29. $temp1=get_parent_class("Who_Window");        //调用get_parent_class()把结果赋值给变量
  30. $temp2=get_parent_class($my_who_window);        //调用get_parent_class()把结果赋值给变量
  31. echo "类Who_Window的父类为:";
  32. echo "<p>";
  33. echo $temp1;                                //输出结果
  34. echo "<p>";
  35. echo "对象my_who_window所属类的父类为:";
  36. echo "<p>";
  37. echo $temp2;                                //输出结果
  38. ?>
  39. </body>
  40. </html>