diff options
author | Lorry Tar Creator <lorry-tar-importer@baserock.org> | 2013-03-14 05:42:27 +0000 |
---|---|---|
committer | <> | 2013-04-03 16:25:08 +0000 |
commit | c4dd7a1a684490673e25aaf4fabec5df138854c4 (patch) | |
tree | 4d57c44caae4480efff02b90b9be86f44bf25409 /ext/standard/tests/class_object/get_class_vars_variation2.phpt | |
download | php2-master.tar.gz |
Imported from /home/lorry/working-area/delta_php2/php-5.4.13.tar.bz2.HEADphp-5.4.13master
Diffstat (limited to 'ext/standard/tests/class_object/get_class_vars_variation2.phpt')
-rw-r--r-- | ext/standard/tests/class_object/get_class_vars_variation2.phpt | 168 |
1 files changed, 168 insertions, 0 deletions
diff --git a/ext/standard/tests/class_object/get_class_vars_variation2.phpt b/ext/standard/tests/class_object/get_class_vars_variation2.phpt new file mode 100644 index 0000000..fad5716 --- /dev/null +++ b/ext/standard/tests/class_object/get_class_vars_variation2.phpt @@ -0,0 +1,168 @@ +--TEST-- +Test get_class_vars() function : testing visibility +--FILE-- +<?php +/* Prototype : array get_class_vars(string class_name) + * Description: Returns an array of default properties of the class. + * Source code: Zend/zend_builtin_functions.c + * Alias to functions: + */ + +class Ancestor { + function test() { + var_dump(get_class_vars("Tester")); + } + + static function testStatic() { + var_dump(get_class_vars("Tester")); + } +} + +class Tester extends Ancestor { + public $pub = "public var"; + protected $prot = "protected var"; + private $priv = "private var"; + + static public $pubs = "public static var"; + static protected $prots = "protected static var"; + static private $privs = "private static var"; + + function test() { + var_dump(get_class_vars("Tester")); + } + + static function testStatic() { + var_dump(get_class_vars("Tester")); + } +} + +class Child extends Tester { + function test() { + var_dump(get_class_vars("Tester")); + } + + static function testStatic() { + var_dump(get_class_vars("Tester")); + } +} + +echo "*** Testing get_class_vars() : testing visibility\n"; + +echo "\n-- From global context --\n"; +var_dump(get_class_vars("Tester")); + +echo "\n-- From inside an object instance --\n"; +$instance = new Tester(); +$instance->test(); + +echo "\n-- From a static context --\n"; +Tester::testStatic(); + + +echo "\n-- From inside an parent object instance --\n"; +$parent = new Ancestor(); +$parent->test(); + +echo "\n-- From a parents static context --\n"; +Ancestor::testStatic(); + + +echo "\n-- From inside a child object instance --\n"; +$child = new Child(); +$child->test(); + +echo "\n-- From a child's static context --\n"; +Child::testStatic(); +?> +===DONE=== +--EXPECTF-- +*** Testing get_class_vars() : testing visibility + +-- From global context -- +array(2) { + ["pub"]=> + string(10) "public var" + ["pubs"]=> + string(17) "public static var" +} + +-- From inside an object instance -- +array(6) { + ["pub"]=> + string(10) "public var" + ["prot"]=> + string(13) "protected var" + ["priv"]=> + string(11) "private var" + ["pubs"]=> + string(17) "public static var" + ["prots"]=> + string(20) "protected static var" + ["privs"]=> + string(18) "private static var" +} + +-- From a static context -- +array(6) { + ["pub"]=> + string(10) "public var" + ["prot"]=> + string(13) "protected var" + ["priv"]=> + string(11) "private var" + ["pubs"]=> + string(17) "public static var" + ["prots"]=> + string(20) "protected static var" + ["privs"]=> + string(18) "private static var" +} + +-- From inside an parent object instance -- +array(4) { + ["pub"]=> + string(10) "public var" + ["prot"]=> + string(13) "protected var" + ["pubs"]=> + string(17) "public static var" + ["prots"]=> + string(20) "protected static var" +} + +-- From a parents static context -- +array(4) { + ["pub"]=> + string(10) "public var" + ["prot"]=> + string(13) "protected var" + ["pubs"]=> + string(17) "public static var" + ["prots"]=> + string(20) "protected static var" +} + +-- From inside a child object instance -- +array(4) { + ["pub"]=> + string(10) "public var" + ["prot"]=> + string(13) "protected var" + ["pubs"]=> + string(17) "public static var" + ["prots"]=> + string(20) "protected static var" +} + +-- From a child's static context -- +array(4) { + ["pub"]=> + string(10) "public var" + ["prot"]=> + string(13) "protected var" + ["pubs"]=> + string(17) "public static var" + ["prots"]=> + string(20) "protected static var" +} +===DONE=== |