Returns an array of method names for class or class instance. */
ZEND_FUNCTION(get_class_methods)
{
- zval *klass;
zval method_name;
zend_class_entry *ce = NULL;
zend_class_entry *scope;
zend_function *mptr;
- if (zend_parse_parameters(ZEND_NUM_ARGS(), "z", &klass) == FAILURE) {
- RETURN_THROWS();
- }
-
- if (Z_TYPE_P(klass) == IS_OBJECT) {
- ce = Z_OBJCE_P(klass);
- } else if (Z_TYPE_P(klass) == IS_STRING) {
- ce = zend_lookup_class(Z_STR_P(klass));
- }
-
- if (!ce) {
- RETURN_NULL();
- }
+ ZEND_PARSE_PARAMETERS_START(1, 1)
+ Z_PARAM_CLASS_NAME_OR_OBJ(ce)
+ ZEND_PARSE_PARAMETERS_END();
array_init(return_value);
scope = zend_get_executed_scope();
/* This is a generated file, edit the .stub.php file instead.
- * Stub hash: 3ce3eab15ec8df2006633735f53f12cff142260c */
+ * Stub hash: f81f2b4cf552c4ee8406b91c437797feb1164be0 */
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_zend_version, 0, 0, IS_STRING, 0)
ZEND_END_ARG_INFO()
#define arginfo_get_mangled_object_vars arginfo_get_object_vars
-ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_get_class_methods, 0, 1, IS_ARRAY, 1)
- ZEND_ARG_INFO(0, class)
+ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_get_class_methods, 0, 1, IS_ARRAY, 0)
+ ZEND_ARG_TYPE_MASK(0, class, MAY_BE_STRING|MAY_BE_OBJECT, NULL)
ZEND_END_ARG_INFO()
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_method_exists, 0, 2, _IS_BOOL, 0)
foreach($values as $value) {
echo "\nArg value " . (is_object($value) ? get_class($value) : $value) . " \n";
- var_dump( get_class_methods($value) );
+ try {
+ var_dump( get_class_methods($value) );
+ } catch (TypeError $exception) {
+ echo $exception->getMessage() . "\n";
+ }
};
echo "Done";
?>
Error: 2 - Undefined variable $unset_var
Arg value 0
-NULL
+get_class_methods(): Argument #1 ($class) must be a valid class name or object, int given
Arg value 1
-NULL
+get_class_methods(): Argument #1 ($class) must be a valid class name or object, int given
Arg value 12345
-NULL
+get_class_methods(): Argument #1 ($class) must be a valid class name or object, int given
Arg value -2345
-NULL
+get_class_methods(): Argument #1 ($class) must be a valid class name or object, int given
Arg value 10.5
-NULL
+get_class_methods(): Argument #1 ($class) must be a valid class name or object, float given
Arg value -10.5
-NULL
+get_class_methods(): Argument #1 ($class) must be a valid class name or object, float given
Arg value 101234567000
-NULL
+get_class_methods(): Argument #1 ($class) must be a valid class name or object, float given
Arg value 1.07654321E-9
-NULL
+get_class_methods(): Argument #1 ($class) must be a valid class name or object, float given
Arg value 0.5
-NULL
+get_class_methods(): Argument #1 ($class) must be a valid class name or object, float given
Error: 2 - Array to string conversion
Arg value Array
-NULL
+get_class_methods(): Argument #1 ($class) must be a valid class name or object, array given
Error: 2 - Array to string conversion
Arg value Array
-NULL
+get_class_methods(): Argument #1 ($class) must be a valid class name or object, array given
Error: 2 - Array to string conversion
Arg value Array
-NULL
+get_class_methods(): Argument #1 ($class) must be a valid class name or object, array given
Error: 2 - Array to string conversion
Arg value Array
-NULL
+get_class_methods(): Argument #1 ($class) must be a valid class name or object, array given
Error: 2 - Array to string conversion
Arg value Array
-NULL
+get_class_methods(): Argument #1 ($class) must be a valid class name or object, array given
Arg value
-NULL
+get_class_methods(): Argument #1 ($class) must be a valid class name or object, null given
Arg value
-NULL
+get_class_methods(): Argument #1 ($class) must be a valid class name or object, null given
Arg value 1
-NULL
+get_class_methods(): Argument #1 ($class) must be a valid class name or object, bool given
Arg value
-NULL
+get_class_methods(): Argument #1 ($class) must be a valid class name or object, bool given
Arg value 1
-NULL
+get_class_methods(): Argument #1 ($class) must be a valid class name or object, bool given
Arg value
-NULL
+get_class_methods(): Argument #1 ($class) must be a valid class name or object, bool given
Arg value
-NULL
+get_class_methods(): Argument #1 ($class) must be a valid class name or object, string given
Arg value
-NULL
+get_class_methods(): Argument #1 ($class) must be a valid class name or object, string given
Arg value string
-NULL
+get_class_methods(): Argument #1 ($class) must be a valid class name or object, string given
Arg value string
-NULL
+get_class_methods(): Argument #1 ($class) must be a valid class name or object, string given
Arg value stdClass
array(0) {
}
Arg value
-NULL
+get_class_methods(): Argument #1 ($class) must be a valid class name or object, null given
Arg value
-NULL
+get_class_methods(): Argument #1 ($class) must be a valid class name or object, null given
Done