河流天空/laravel-mobile-detect
直接从Blade模板中访问即时移动检测。
Requires
Requires (Dev)
- laravel/laravel: 5.5.*
- philo/laravel-blade: ^3.1
- phpspec/prophecy-phpunit: ^1.1
- phpunit/phpunit: ^6.3
README
一个允许您在Blade模板中直接使用设备检测的包。(利用知名的、不断更新的PHP移动检测库。)
您何时会使用这个包?
响应式CSS可以帮助使浏览器中的内容在不同设备上看起来不错,但它不会帮助您从后端提供响应式内容(至少不是简单的方式)。这可能会对用户体验产生严重影响(您有没有在手机连接不良的情况下等待大图加载的经历?)。这个包将使您轻松地从后端提供特定设备的內容。
这个包是如何工作的?
该包实现了一些Blade指令,您可以使用这些指令从Blade模板为不同类型的设备提供不同的内容。
安装
通过composer安装包
$ composer require riverskies/laravel-mobile-detect
Laravel 5.4或更早版本
将服务提供者添加到您的config/app.php
文件中
Riverskies\Laravel\MobileDetect\MobileDetectServiceProvider::class
可选,如果您想在其他地方使用基础实例(或访问所有函数),也可以添加别名
'MobileDetect' => Riverskies\Laravel\MobileDetect\Facades\MobileDetect::class
使用方法
在模板文件中使用新的Blade指令
@desktop <img src="/path/to/high-definition/image"/> @elsedesktop <img src="/path/to/handheld-optimised/image"/> @enddesktop
注意 您可能需要运行
php artisan view:clear
以使新的Blade指令生效!
可用指令
@desktop
、@elsedesktop
、@enddesktop
- 用于桌面设备
@handheld
、@elsehandheld
、@endhandheld
- 用于非桌面(手机和平板)设备
@tablet
、@elsetablet
、@endtablet
- 用于平板设备
@nottablet
、@elsenottablet
、@endnottablet
- 用于非平板(桌面或手机)设备
@mobile
、@elsemobile
、@endmobile
- 用于手机设备
@notmobile
、@elsenotmobile
、@endnotmobile
- 用于非手机(桌面或平板)设备
@ios
、@elseios
、@endios
- 用于iOS平台
@android
、@elseandroid
、@endandroid
- 用于Android平台
@else...
指令的使用是可选的。