Как использовать функцию getproducts от Whmcs в Laravel - PullRequest
0 голосов
/ 01 ноября 2019

У меня есть проект Laravel, использующий интеграцию Whmcs. Вот как используется whmcs:

Whmcs::getproducts([
            'pid' => 1,
        ]);

Где найти функцию getproducts? Я искал имя функции, но не смог найти его в пакете.

Ответы [ 2 ]

1 голос
/ 01 ноября 2019

Нет такого метода. Класс WhmcsManager имеет магический метод __call, который используется. Любые недоступные или несуществующие вызовы метода будут обрабатываться __call, который передаст имя метода и аргументы методу execute, который вызовет API с параметром action, установленным в качестве имени метода, который вы вызвали.

WhmcsManager@__call

WhmcsManager@execute

Руководство по PHP - Классы и объекты - Перегрузка методов - __call

1 голос
/ 01 ноября 2019

Я предполагаю, что вы используете этот пакет

https://github.com/darthsoup/laravel-whmcs

Это просто оболочка для работы с WHMCS API.

Существует ссылка на API для GetProducts

https://developers.whmcs.com/api-reference/getproducts/

Итак, насколько я понял, вы должны просто установить правильное имя в случае с верблюдом

Whmcs::GetProducts([
    'pid' => 1,
])

Или без магических методов:

$whmcs = app('whmcs');
$whmcs->execute('GetProducts', [
    'pid' => 1,
]);
...