reefki/laravel-device-detector
Laravel 对 Matomo 的通用设备检测库的包装。
v1.0.1
2024-05-26 08:26 UTC
Requires
- laravel/framework: ^9.0|^10.0|^11.0
- matomo/device-detector: ^6.0
Requires (Dev)
- laravel/pint: ^1.13
- orchestra/testbench: ^7.0|^8.0
- phpstan/phpstan: ^1.10
- phpunit/phpunit: ^10.0
README
此 Laravel 包装器无缝地将设备检测功能集成到 Laravel 应用程序中,对应于 Matomo 通用设备检测 库。
安装
此包可以通过 Composer 安装。
composer require reefki/laravel-device-detector
可选地,您可以使用以下命令发布此包的配置文件
php artisan vendor:publish --provider="Reefki\DeviceDetector\DeviceDetectorServiceProvider" --tag="config"
使用
从用户代理字符串检测设备
use Reefki\DeviceDetector\Device; $device = Device::detect($request->userAgent());
从用户代理字符串和可选提示检测设备
use Reefki\DeviceDetector\Device; $device = Device::detect($request->userAgent(), $request->server());
从请求实例检测设备
use Reefki\DeviceDetector\Device; $device = Device::detectRequest($request);
直接从请求实例检测设备
$device = $request->device();
上述所有方法都将返回一个 DeviceDetector\DeviceDetector
实例,您可以使用它来获取有关设备的详细信息。
if ($device->isBot()) { $botInfo = $device->getBot(); } else { $clientInfo = $device->getClient(); $osInfo = $device->getOs(); $device = $device->getDeviceName(); $brand = $device->getBrandName(); $model = $device->getModel(); }
有关如何使用返回的实例的更多信息,请参阅 Matomo 的通用设备检测 库的 README 文件。
测试
使用以下命令运行测试
vendor/bin/phpunit
鸣谢
许可
MIT 许可证 (MIT)。有关更多信息,请参阅 许可文件。