ZF-1866: Zend_Server_Reflection should allow specifying docblock parameters for parameters not in the method signature
Description
The class Zend_View_Helper_DeclareVars has a method {{declareVars()}} that reads its parameters with {{func_get_args()}}. The docblock declares a {{@param}} for variable arguments, but the function signature declares no parameters.
This is apparently legitimate coding practice according to example in http://php.net/func-get-args, but it break Zend_Server_Reflection. {{Zend_Server_Reflection_Function::_refect()}} makes an assumption that if a parameter is documented with a {{@param}} tag in the docblock, then there must be a corresponding parameter declared in the method signature.
Comments
Posted by Bill Karwin (bkarwin) on 2007-08-20T12:19:17.000+0000
Linking to related issue that affects Zend_Db_Table.
Posted by Matthew Weier O'Phinney (matthew) on 2007-11-16T12:14:44.000+0000
I'm re-marking this as a Zend_Server_Reflection bug, and re-titling the summary, as it's not really an issue with DeclareVars so much as with Zend_Server_Reflection not treating docblock params that are unmatched in the method signature as optional parameters.
Posted by Wil Sinclair (wil) on 2008-04-18T13:12:05.000+0000
This doesn't appear to have been fixed in 1.5.0. Please update if this is not correct.
Posted by Matthew Weier O'Phinney (matthew) on 2008-04-22T10:42:12.000+0000
Scheduling for next minor release.
Posted by Alexander Veremyev (alexander) on 2008-06-17T09:25:27.000+0000
Fixed.
Exception is thrown now if number of arguments doesn't correspond number of actual function arguments.
That should be the best solution for services.
Posted by Wil Sinclair (wil) on 2008-09-02T10:39:09.000+0000
Updating for the 1.6.0 release.