RE: [PHP] Calling parent function with call_user_func_array
| From: | Tommy Baggett | Date: | Thu, 29 Nov 2007 23:13:42 +0000 |
| Subject: | RE: [PHP] Calling parent function with call_user_func_array | ||
| References: | 1 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-265264@lists.php.net to get a copy of this message | ||
Thanks for taking the time to reply.
I'm working on a Wordpress theme and extending one of their existing
classes (the Walker class if you're familiar with WP). Since WP still
supports PHP4, my theme needs to as well.
-----Original Message-----
From: Jochem Maas [mailto:jochem@iamjochem.com]
Sent: Thursday, November 29, 2007 5:06 PM
To: Tommy Baggett
Cc: php-general@lists.php.net
Subject: Re: [PHP] Calling parent function with call_user_func_array
Tommy Baggett wrote:
> I'm a self-confessed PHP newb (first step towards a cure, right?), so
if these are your first steps why use php4? php5 has been out for going
on 3 years.
> apologies in advance for what may be a basic question. I spent an
> hour searching for an answer to this and couldn't find one.
>
> I found one post that said there was a problem with this in 5.0.3, but
> it didn't indicate whether the fix was also applied to the PHP4
> branch.
>
> I'm using PHP v4.4.7. I have class B which extends class A. I'm
> overriding a function that is normally called with a variable number
> of parameters via call_user_func_array. How do I call the class A
> implementation of the function using call_user_func_array from the
> class B implementation?
>
> class A {
> function doSomething($elements, $level) {
> ...
> }
> }
>
> Class B extends A {
> function doSomething($elements, $level) {
> ...
> call_user_func_array(/*class A implementation of doSomething*/,
> args);
does this work:?
call_user_func_array(array(parent,'doSomething'),$args);
it's an educated guess, no garantees.
> }
> }
>
> Thanks in advance for any help!
>