(PECL classkit >= 0.1)
classkit_method_add — Añade dinámicamente un nuevo método una clase dada
$classname
, string $methodname
, string $args
, string $code
[, int $flags
= CLASSKIT_ACC_PUBLIC
] )Esta función ha sido declarada EXPERIMENTAL. Su comportamiento, su nombre y la documentación que le acompaña puede cambiar sin previo aviso en futuras versiones de PHP. Use esta función bajo su propio riesgo.
classname
La clase en la que este método será añadido
methodname
El nombre del método a añadir
args
Lista de argumentos separados por coma para el método recién creado
code
El código a ser evaluado cuando methodname
es llamado
flags
El tipo de método a crear, puede ser
CLASSKIT_ACC_PUBLIC
,
CLASSKIT_ACC_PROTECTED
o
CLASSKIT_ACC_PRIVATE
Nota:
Este parámetro se usa sólo a partir de PHP 5, ya que, antes de esta versión, todos los métodos eran públicos.
Devuelve TRUE
en caso de éxito o FALSE
en caso de error.
Ejemplo #1 Ejemplo de classkit_method_add()
<?php
class Ejemplo {
function foo() {
echo "foo!\n";
}
}
// crear un objeto de Ejemplo
$e = new Example();
// Añadir un nuevo método público
classkit_method_add(
'Ejemplo',
'sumar',
'$num1, $num2',
'return $num1 + $num2;',
CLASSKIT_ACC_PUBLIC
);
// sumar 12 + 4
echo $e->sumar(12, 4);
?>
El resultado del ejemplo sería:
16