PHP.nl

runkit7_method_add

runkit7_method_add

Dynamically adds a new method to a given class

bool **runkit7_method_add** string $class_name string $method_name string $argument_list string $code int $flags string $doc_comment string $return_type bool $is_strict
bool **runkit7_method_add** string $class_name string $method_name Closure $closure int $flags string $doc_comment string $return_type bool $is_strict

class_nameThe class to which this method will be added

method_nameThe name of the method to add

argument_listComma-delimited list of arguments for the newly-created method

code The code to be evaluated when is called method_name

closure A that defines the method. closure

flags The type of method to create, can be , or optionally combined via bitwise OR with

  `RUNKIT7_ACC_PUBLIC``RUNKIT7_ACC_PROTECTED``RUNKIT7_ACC_PRIVATE``RUNKIT7_ACC_STATIC`

doc_commentThe doc comment of the method.

return_typeThe return type of the method.

is_strict Whether the method behaves as if it were declared in a file with strict_types=1

return.success

Voorbeeld: example

<?php
class Example {
    function foo() {
        echo "foo!\n";
    }
}

// create an Example object
$e = new Example();

// Add a new public method
runkit7_method_add(
    'Example',
    'add',
    '$num1, $num2',
    'return $num1 + $num2;',
    RUNKIT7_ACC_PUBLIC
);

// add 12 + 4
echo $e->add(12, 4);
?>
16

runkit7_method_copy``runkit7_method_redefine``runkit7_method_remove``runkit7_method_rename``runkit7_function_add