Задать вопрос

Как передать правильно название метода?

Здравствуйте!
Имею функцию:
public function GetNewObjects()
    {
        $array =  $this->client->__FUNCTION__();

        return $array->return->Items;
    }


При запуске выдает ошибку:
Function ("__FUNCTION__") is not a valid method for this service

Как правильно запустить, данную функцию?
  • Вопрос задан
  • 109 просмотров
Подписаться 1 Оценить 2 комментария
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
DevMan
@DevMan
пффф...
$functionName = __FUNCTION__;
$this->client->$functionName();
и всех делов.

или $this->client->{__FUNCTION__}();
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
@Quieteroks
php программист
Вы хотите вызвать функцию GetNewObjects из объекта client?
Для этих целей есть магические функции. В Вашем случае функция __call();

public function __call($name, $args = [])
    {
        $array =  call_user_func_array([$this->client, $name], $args);

        return $array->return->Items;
    }
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы