classkit_import
classkit_method_copy
Функции classkit
PHP Manual

# classkit_method_add

(PECL classkit >= 0.1)

classkit_method_add — Динамически добавляет новый метод в заданный класс

### Описание

bool classkit_method_add ( string `$classname` , string `$methodname` , string `$args` , string `$code` [, int `$flags` ] )
Внимание

Эта функция является ЭКСПЕРИМЕНТАЛЬНОЙ. Поведение этой функции, ее имя и относящаяся к ней документация могут измениться в последующих версиях PHP без уведомления. Используйте эту функцию на свой страх и риск.

### Список параметров

`classname`

  Класс, в который этот метод будет добавлен

`methodname`

  Имя добавляемого метода

`args`

  Список аргументов для созданного метода с разделителем ","

`code`

  Код, который будет выполняться во время вызова `methodname`

`flags`

  Тип создаваемого метода, может быть `CLASSKIT_ACC_PUBLIC`, `CLASSKIT_ACC_PROTECTED` или `CLASSKIT_ACC_PRIVATE`

  > Замечание: Этот параметр используется только в PHP начиная с 5 версии, поскольку в предыдущих версиях все методы были общедоступными.

### Возвращаемые значения

Возвращает `TRUE` в случае успешного завершения или `FALSE` в случае возникновения ошибки.

### Примеры

Пример #1 Пример использования classkit_method_add()

`<?php
class Example {
function foo() {
echo "foo!\n";
}
}
// создается объект Example
$e = new Example();
// Добавляется новый общедоступный метод
classkit_method_add(
'Example',
'add',
'$num1, $num2',
'return $num1 + $num2;',
CLASSKIT_ACC_PUBLIC
);
// сложение 12 + 4
echo $e->add(12, 4);
?>`

Результат выполнения данного примера:

    16

### Смотрите также

- classkit_method_copy() - Копирует метод из одного класса в другой
- classkit_method_redefine() - Динамически меняет код заданного метода
- classkit_method_remove() - Динамически удаляет заданный метод
- classkit_method_rename() - Динамически меняет имя заданного метода
- create_function() - Создаёт анонимную (lambda-style) функцию

classkit_import
classkit_method_copy
Функции classkit
PHP Manual