neilime / zf2-browscap
此包已被废弃,不再维护。未建议替代包。
ZF2 Browscap 是一个 Zend Framework 2 模块,提供了改进的 'get_browser' 函数。如果 php.ini 中的 'browscap' 配置设置未定义或未指向 browscap.ini 文件的正确位置,则此模块可以独立使用。
1.1
2013-08-21 12:43 UTC
Requires
- php: >=5.3.3
- zendframework/zendframework: 2.*@stable
This package is auto-updated.
Last update: 2020-09-09 19:18:43 UTC
README
⚠️ 此模块适用于 Zend Framework 2,已弃用 ⚠️
注意:如果您想贡献,请随时提出,我会审查任何 PR。
简介
ZF2 Browscap 是一个 Zend Framework 2 模块,提供了改进的 get_browser 函数。如果 php.ini 中的 "browscap" 配置设置未定义或未指向 browscap.ini 文件的正确位置,则此模块可以独立使用。
贡献
如果您想为 ZF2 Browscap 贡献,请阅读 CONTRIBUTING.md 文件。
要求
- Zend Framework 2 (2.*)
安装
主要设置
通过克隆项目
- 通过将其克隆到
./vendor/
中来安装 browscap。 - 将此项目克隆到您的
./vendor/
目录中。
使用 composer
-
在您的 composer.json 中添加此项目
"require": { "neilime/zf2-browscap": "dev-master" }
-
现在运行以下命令让 composer 下载 ZF2 Browscap:
$ php composer.phar update
安装后
-
在您的
application.config.php
文件中启用它。<?php return array( 'modules' => array( // ... 'Neilime\Browscap', ), // ... );
配置
- string
browscap_ini_path
: (可选) 仅在原生 PHP 函数 get_browser 不可用或如果将allows_native_get_browser
选项设置为 false 时才需要。定义 browscap.ini 文件的路径(允许本地或远程文件) - Zend\Cache\Storage\StorageInterface|string|array
cache
: (可选) 定义用于存储解析后的 browscap.ini 的缓存存储适配器。
允许使用类名和服务检索Zend\Cache\Storage\StorageInterface
,或使用Zend\Cache\StorageFactory::factory
的数组。这不仅可以在每次调用时节省加载和解析 "browscap.ini",还可以确保一个优化的加载过程。 - boolean
allows_native_get_browser
: 定义如果原生 PHP 函数 get_browser 可用,则是否可以使用它。
如何使用 ZF2 Browscap
ZF2 Browscap 模块提供了一种服务、视图助手和控制器插件
-
使用服务管理器调用 Browscap
/* @var $serviceManager \Zend\ServiceManager\ServiceLocatorInterface */ $browscap = $serviceManager->get('BrowscapService'); //Retrieve "\Neilime\Browscap\BrowscapService" object var_dump($browscap->getBrowser()); //Display an object which will contain various data elements representing, for instance, the browser's major and minor version numbers and ID string;
-
在控制器中调用 Browscap,“get_browser” 插件期望与原生 PHP 函数 get_browser 相同的参数。
$browscap = $this->get_browser(); //Retrieve an object echo $browscap->parent; $browscap = $this->get_browser(null,true); //Retrieve an array echo $browscap['parent']; $browscap = $this->get_browser( \Zend\Http\Header\UserAgent::fromString('User-Agent: Mozilla/5.0 (Linux; Android 4.0.4; Desire HD Build/IMM76D) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Mobile Safari/535.19') ); //Retrieve an object with an arbitrary user agent echo $browscap->parent;
-
在视图中调用 Browscap,“get_browser” 助手期望与原生 PHP 函数 get_browser 相同的参数。
$browscap = $this->get_browser(); //Retrieve an object echo $browscap->parent; $browscap = $this->get_browser(null,true); //Retrieve an array echo $browscap['parent']; $browscap = $this->get_browser( \Zend\Http\Header\UserAgent::fromString('User-Agent: Mozilla/5.0 (Linux; Android 4.0.4; Desire HD Build/IMM76D) AppleWebKit/535.19 (KHTML, like Gecko) Chrome/18.0.1025.166 Mobile Safari/535.19') ); //Retrieve an object with an arbitrary user agent echo $browscap->parent;
工具
ZF2 Browscap 提供控制台工具。
特性
Load & parse "browscap.ini" file (or update cached browscap.ini)
用法
加载 & 解析 "browscap.ini" 文件
php public/index.php load-browscap