La función ReflectionMethod::getPrototype() es una función incorporada en PHP que se usa para devolver el prototipo del método especificado; de lo contrario, se devuelve una excepción/error si el método no tiene un prototipo.
Sintaxis:
ReflectionMethod ReflectionMethod::getPrototype( void )
Parámetros: Esta función no acepta ningún parámetro.
Valor devuelto: esta función devuelve el prototipo del método especificado; de lo contrario, se devuelve una excepción/error si el método no tiene un prototipo.
Los siguientes programas ilustran la función ReflectionMethod::getPrototype() en PHP:
Programa 1:
<?php // Initializing a user-defined class Department1 class Department1 { public function Marketing_Dpt() { return 'Department1'; } } // Initializing a subclass of the above class Department1 class Department2 extends Department1{ public function Marketing_Dpt() { return 'Department2'; } } // Again Initializing a subclass of the above subclass Department2 class Department3 extends Department2{ public function Coding_Dpt() { return 'Department3'; } } // Using the ReflectionMethod() over the above // subclass Department2 $A = new ReflectionMethod('Department3', 'Marketing_Dpt'); // Calling the getPrototype() function $B = $A->getPrototype(); // Getting the prototype var_dump($B); ?>
Producción:
object(ReflectionMethod)#2 (2) { ["name"]=> string(13) "Marketing_Dpt" ["class"]=> string(11) "Department1" }
Programa 2:
<?php // Initializing a user-defined class class Company { protected function GeeksforGeeks($name) { return 'GFG' . $name; } } // Using ReflectionMethod() over the class Company $A = new ReflectionMethod('Company', 'GeeksforGeeks'); // Calling the getPrototype() function $B = $A->getPrototype(); // Getting the prototype or an error is returned // if the method does not have a prototype. var_dump($B); ?>
Salida: El método no tiene ningún prototipo que le dé un error.
PHP Fatal error: Uncaught ReflectionException: Method Company:: GeeksforGeeks does not have a prototype in /home/9d8367b263ee4d7ec6941876b0eae792.php:15 Stack trace: #0 /home/9d8367b263ee4d7ec6941876b0eae792.php(15): ReflectionMethod->getPrototype() #1 {main} thrown in /home/9d8367b263ee4d7ec6941876b0eae792.php on line 15
Referencia: https://www.php.net/manual/en/reflectionmethod.getprototype.php
Publicación traducida automáticamente
Artículo escrito por Kanchan_Ray y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA