当前位置:Gxlcms > PHP教程 > PHP类和对象函数实例详解_PHP教程

PHP类和对象函数实例详解_PHP教程

时间:2021-07-01 10:21:17 帮助过:2人阅读

1. interface_exists、class_exists、method_exists和property_exists: 顾名思义,从以上几个函数的命名便可以猜出几分他们的功能。我想这也是我随着对PHP的深入学习而越来越喜欢这门编程语言的原因了吧。下面先给出他们的原型声明和简短说明,更多的还是直接看例子代码吧。 bool interface_exists (string $interface_name [, bool $autoload = true ]) 判断接口是否存在,第二个参数表示在查找时是否执行__autoload。 bool class_exists (string $class_name [, bool $autoload = true ]) 判断类是否存在,第二个参数表示在查找时是否执行__autoload。 bool method_exists (mixed $object , string $method_name) 判断指定类或者对象中是否含有指定的成员函数。 bool property_exists (mixed $class , string $property) 判断指定类或者对象中是否含有指定的成员变量。 输出结果过长,而且这两个函数也比较简单,所以下面就不再给出输出结果了。 3. get_class_methods、get_class_vars和get_object_vars: 这三个函数有一个共同点,即只能获取作用域可见范围内的所有成员函数、成员变量或非静态成员变量。比如在类的内部调用,则所有成员函数或者变量都符合条件,而在类的外部,则只有共有的函数和变量可以返回。 array get_class_methods (mixed $class_name) 获取指定类中可访问的成员函数。 array get_class_vars (string $class_name) 获取指定类中可以访问的成员变量。 array get_object_vars (object $object) 获取可以访问的非静态成员变量。 $value) { print '$key = '.$key. ' => $value = '.$value."\n"; } } class TestClass { public $publicVar = 1; private $privateVar = 2; static private $staticPrivateVar = "hello"; static public $staticPublicVar; private function privateFunction() { } function publicFunction() { output_array("get_class_methods",get_class_methods(__CLASS__)); output_array('get_class_vars',get_class_vars(__CLASS__)); output_array('get_object_vars',get_object_vars($this)); } } $testObj = new TestClass(); print "The following is output within TestClass.\n"; $testObj->publicFunction(); print "\nThe following is output out of TestClass.\n"; output_array('get_class_methods',get_class_methods('TestClass')); output_array('get_class_vars',get_class_vars('TestClass')); output_array('get_object_vars',get_object_vars($testObj)); 运行结果如下: bogon:TestPhp liulei$ php class_exist_test.php The following is output within TestClass. get_class_methods..................... $key = 0 => $value = privateFunction $key = 1 => $value = publicFunction get_class_vars..................... $key = publicVar => $value = 1 $key = privateVar => $value = 2 $key = staticPrivateVar => $value = hello $key = staticPublicVar => $value = get_object_vars..................... $key = publicVar => $value = 1 $key = privateVar => $value = 2 The following is output out of TestClass. get_class_methods..................... $key = 0 => $value = publicFunction get_class_vars..................... $key = publicVar => $value = 1 $key = staticPublicVar => $value = get_object_vars..................... $key = publicVar => $value = 1 4. get_called_class和get_class: string get_class ([ object $object = NULL ]) 获取参数对象的类名称。 string get_called_class (void) 静态方法调用时当前的类名称。

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/678024.htmlTechArticle1. interface_exists、class_exists、method_exists和property_exists: 顾名思义,从以上几个函数的命名便可以猜出几分他们的功能。我想这也是我随着对...

人气教程排行