Php/docs/function.uopz-compose

来自菜鸟教程
跳转至:导航、​搜索

uopz_compose

(PECL uopz 1, PECL uopz 2)

uopz_composeCompose a class


Warning This function has been REMOVED in PECL uopz 5.0.0.


说明

uopz_compose ( string $name , array $classes [, array $methods [, array $properties [, int $flags ]]] ) : void

Creates a new class of the given name that implements, extends, or uses all of the provided classes


参数

name
A legal class name
classes
An array of class, interface and trait names
methods
An associative array of methods, values are either closures or [modifiers => closure]
properties
An associative array of properties, keys are names, values are modifiers
flags
Entry type, by default ZEND_ACC_CLASS


返回值

范例

Example #1 uopz_compose() example

<?phpclass myClass {}trait myTrait {}interface myInterface {}uopz_compose(    Composed::class, [        myClass::class,         myTrait::class,         myInterface::class    ], [    "__construct" => function() {        /* ... */    }]);var_dump( class_uses(Composed::class), class_parents(Composed::class), class_implements(Composed::class));?>

以上例程会输出:


array(1) {
  ["myTrait"]=>
  string(7) "myTrait"
}
array(1) {
  ["myClass"]=>
  string(7) "myClass"
}
array(1) {
  ["myInterface"]=>
  string(11) "myInterface"
}