classkit_method_add
(PECL classkit >= 0.1)
classkit_method_add — Añade dinámicamente un nuevo método una clase dada
Descripción
$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.
Parámetros
-
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
methodnamees llamado -
flags -
El tipo de método a crear, puede ser
CLASSKIT_ACC_PUBLIC,CLASSKIT_ACC_PROTECTEDoCLASSKIT_ACC_PRIVATENota:
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.
Valores devueltos
Devuelve TRUE en caso de éxito o FALSE en caso de error.
Ejemplos
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
Ver también
- classkit_method_copy() - Copia un método de una clase a otra
- classkit_method_redefine() - Cambia dinámicamente el código del método dado
- classkit_method_remove() - Elimina dinámicamente el método dado
- classkit_method_rename() - Cambia dinámicamente el nombre del método dado
- create_function() - Crear una función anónima (estilo lambda)