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

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

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

        return $array->return->Items;
    }


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

Как правильно запустить, данную функцию?
  • Вопрос задан
  • 109 просмотров
Подписаться 1 Оценить 2 комментария
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    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;
    }
Ответ написан
Ваш ответ на вопрос

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

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
IT ATLAS Москва
от 250 000 до 500 000 ₽