我需要檢查用戶是否在連接到網站時使用移動設備。檢查用戶是否使用移動設備
我需要進一步製作一個eventListener。
在 Symfony doc有一個通道,其中實際上可以通過這個$request->headers->get('User-Agent')
有沒有一種簡單的方法來做到這一點?
---編輯---
這是我寫到目前爲止代碼。我很想念如何將它傳遞給控制器?
服務
template.loader:
class: ST\BackofficeBundle\EventListener\DeviceListener
tags:
- { name: kernel.event_listener, event: kernel.view, method: onKernelView }
聽衆
class DeviceListener
{
public function onKernelView(getResponseEvent $event)
{
$event->getRequest()->getSession()->set('mobile', true);
$response = new Response();
$response->setContent($event);
$event->setResponse($response);
}
}
我在正確的軌道上?
我認爲你的問題太寬,請閱讀servi ces首先工作。 moby.loader是在你發佈的答案中定義的服務,所以你必須定義那個服務,它是你的裝載器類的實例。 – Strnm
好的,謝謝,我會盡量縮小它 –
「我需要檢查用戶正在使用移動設備「 - 爲什麼? 「移動設備」幾乎從來都不是一個有用的信息。你真的關心什麼?顯示屏尺寸?如果屏幕是觸摸屏?如果他們的網絡連接速度很慢?在計量網絡連接上?在一個不可靠的連接?是否能夠運行.exe文件,如果他們要下載一個?還有別的嗎? – Quentin