использование объекта $app внутри контроллера (Lumen)

Хорошо, я новичок в lumen и laravel, и я пытаюсь сделать этот API https://packagist.org/packages/codenexus/lumen-geoip работают в lumen, я установил его через композитор, и я могу использовать его и получать местоположения на основе IP-адреса, указанного, когда я внутри route.php

Но когда я использую тот же код внутри контроллера, он не позволяет мне продолжить, потому что переменная $app не определена.

Это код, который работает внутри маршрутов

    $app->geoip->getLocation('148.210.21.180')->country->names['en']

Я читал, что сервисный контейнер может помочь мне в этом решении, но я чувствую себя потерянным... Спасибо за совет за помощь.


person Code Majic    schedule 05.02.2016    source источник


Ответы (1)


Переменная $app недоступна внутри ваших контроллеров, но вы можете использовать метод app() в любом месте вашего кода для доступа к объекту приложения.

Итак, попробуйте это в своем контроллере:

app()->geoip->getLocation('148.210.21.180')->country->names['en']
person ssfinney    schedule 05.02.2016