Llamar método php class desde cadena con parámetro

Tengo problemas para llamar a un método de clase desde una cadena en PHP. Aquí hay un ejemplo simple. Una vez que lo obtenga, usaré una variable como nombre del método.

Así es como llamaría al método normalmente:

$tags_array = $this->get_tags_for_image($row["id"]); 

Así es como estoy tratando pero obtengo un error:

 $tags_array = call_user_func('get_images_for_tag', $row["id"]); 

Me falta el scope, pero no puedo encontrar la manera de llamar al método.

—- EDIT Se dio cuenta de que esto llama al método, pero $ row no está definido ahora creo

 $tags_array = call_user_func(array($this, 'get_images_for_tag'), $row["id"]); 

Bloque de código completo:

  $images = call_user_func(array($this, 'get_images_for_tag'), $filter); foreach ($images as $row){ $tags_array = call_user_func(array($this, 'get_images_for_tag'), $row["id"]); foreach ($tags_array as $tag_row){ $tags_array[] = $tag_row["tag"]; } $image_array []= array ( 'url' => $this->gallery_path_url . '/'. $row["name"], 'thumb_url' => $this->gallery_path_url . '/thumbs/' . 't_'. $row["name"], 'id' => $row["id"], 'description' => $row["description"], //'url' => $row["url"], 'tags' => $tags_array ); } 

Cuando desee invocar un método en un objeto con call_user_func (), debe pasarle una matriz con el primer elemento como el nombre del objeto o clase al que se llamará el método y el segundo elemento será el nombre del método, por ejemplo :

 $tags_array = call_user_func( array($this,'get_images_for_tag'), $row["id"]); 

Prueba esto:

 $tags_array = call_user_func(array($yourClassObj, 'get_images_for_tag'), $row["id"]); 

Utilizar esta :

call_user_method (‘get_images_for_tag’, $ this, $ row [“id”]);