2

Consider the class abc

class abc{
  public function xyz(){
     /*Some processing here*/
     return true;
  }
};

Suppose I don't know the name of the method directly, but have its name stored in variable, then how can I call the method?

1
  • Just do: $obj->$method(); Commented Jun 18, 2016 at 7:30

2 Answers 2

3
<?php
class abc{
  public function xyz(){
     /*Some processing here*/
     return true;
  }
};

$method='xyz';  // Define your method name from database
$a= new abc();
$a->$method(); // call method
?>

Would you please refer above code ?

Sign up to request clarification or add additional context in comments.

1 Comment

Ideally you also first check whether the method really exists via method_exists($a, $method)
1

You can try like below:

class abc{
  public function xyz(){
     echo "Called!";
  }
}

$obj = new abc();
$fun = "xyz";
call_user_func(array($obj, $fun));

Also answered here How to call PHP function from string stored in a Variable

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.