Re: OO method inside a variable
| From: | Eddie Drapkin | Date: | Wed, 04 Nov 2009 21:39:02 +0000 |
| Subject: | Re: OO method inside a variable | ||
| References: | 1 | Groups: | php.general |
| Request: | Send a blank email to php-general+get-299623@lists.php.net to get a copy of this message | ||
On Wed, Nov 4, 2009 at 4:36 PM, <simone.nanni@ptvonline.it> wrote:
> Hi everybody,
> i'm trying to apply a method to an object getting its name from a variable,
> that i obtain parsing an XML file.
>
> For example:
>
> $object = new Class;
> $method = "row()"; #I'm getting this from the XML parser
> $object->$method; #I've an error here...
>
> Obviously the method inside the class exists.
> How can i do it?
> Thanks a lot in advance.
>
> Simone Nanni
>
>
> --
> PHP General Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
>
>
Use call_user_func() and call_user_func_array() with the callback format:
array($instance, 'method'); for instance methods or
array('class_name', 'method'); for static methods
so you'd want:
$obj = new Class();
$method = "row";
call_user_func(array($obj, $method));