У меня есть проект Laravel, использующий интеграцию Whmcs. Вот как используется whmcs:
Whmcs::getproducts([ 'pid' => 1, ]);
Где найти функцию getproducts? Я искал имя функции, но не смог найти его в пакете.
getproducts
Нет такого метода. Класс WhmcsManager имеет магический метод __call, который используется. Любые недоступные или несуществующие вызовы метода будут обрабатываться __call, который передаст имя метода и аргументы методу execute, который вызовет API с параметром action, установленным в качестве имени метода, который вы вызвали.
WhmcsManager
__call
execute
action
WhmcsManager@__call
WhmcsManager@execute
Руководство по PHP - Классы и объекты - Перегрузка методов - __call
Я предполагаю, что вы используете этот пакет
https://github.com/darthsoup/laravel-whmcs
Это просто оболочка для работы с WHMCS API.
Существует ссылка на API для GetProducts
GetProducts
https://developers.whmcs.com/api-reference/getproducts/
Итак, насколько я понял, вы должны просто установить правильное имя в случае с верблюдом
Whmcs::GetProducts([ 'pid' => 1, ])
Или без магических методов:
$whmcs = app('whmcs'); $whmcs->execute('GetProducts', [ 'pid' => 1, ]);