phpbrowscap

Standalone replacement for php's native get_browser() function

  • 所有者: GaretJax/phpbrowscap
  • 平台:
  • 許可證: MIT License
  • 分類:
  • 主題:
  • 喜歡:
    0
      比較:

Github星跟蹤圖

Browser Capabilities PHP Project

Hacking around with PHP to have a better solution than get_browser()

Build Status

Changes (new version - 2.0)

Please see changelog for a list of recent changes. (huge performance improvements!)

Introduction

The browscap.ini file is a database which
provides a lot of details about browsers and their capabilities, such as name,
versions, Javascript support and so on.

Please note: browscap.ini was maintained by Gary Keith and is
now maintained by RAD Moose. More information about the transfer of owners can be found here.
Browscap.ini source files are currently available at a temporary location (http://tempdownloads.browserscap.com/).
All the links in Browscap class are updated, but if you use custom links remember to change them!

PHP's native get_browser() function parses this
file and provides you with a complete set of information about every browser's
details, But it requires the path to the browscap.ini file to be specified in
the php.ini browscap
directive which is flagged as PHP_INI_SYSTEM.

Since in most shared hosting environments you have not access to the php.ini
file, the browscap directive cannot be modified and you are stuck with either
and outdated database or without browscap support at all.

Browscap is a standalone class for PHP >=5.3 that gets around the limitations of
get_browser() and manages the whole thing.
It offers methods to update, cache, adapt and get details about every supplied
user agent on a standalone basis.
It's also much faster than get_browser() while still returning the same results.

Browscap is a Composer package.

Quick start

A quick start guide is available on the GitHub wiki, at the following address:
https://github.com/GaretJax/phpbrowscap/wiki/QuickStart

Features

Here is a non-exhaustive feature list of the Browscap class:

  • Very fast
    • at least 3 times faster than get_browser() when not using opcache
    • 20 or more times faster than get_browser() when using opcache (see tests)
  • Standalone and fully PHP configuration independent (no need for php.ini setting)
  • Fully get_browser() compatible (with some get_browser() bugs fixed)
  • User agent auto-detection
  • Returns object or array
  • Parsed .ini file cached directly into PHP arrays (leverages opcache)
  • Accepts any .ini file (even ASP and lite versions)
  • Auto updated browscap.ini file and cache from remote server with version checking
  • Fully configurable, including configurable remote update server and update schedules
  • PHP >= 5.3 compatible
  • Released under the MIT License

Issues and feature requests

Please report your issues and ask for new features on the GitHub Issue Tracker
at https://github.com/GaretJax/phpbrowscap/issues

Please report incorrectly identified User Agents and browser detect in the browscap.ini
file on Google Groups here: https://groups.google.com/forum/#!forum/browscap

Please note that the Browscap class only parses and queries the browscap.ini
database provided by RAD Moose (previously by Gary Keith). If a browser is wrongly identified or a results
presents erroneous properties, please refer directly to the temporary browscap project
homepage at: http://tempdownloads.browserscap.com/ or post your misidentified browser and User Agent at
the Browscap Google Groups page: https://groups.google.com/forum/#!forum/browscap

主要指標

概覽
名稱與所有者GaretJax/phpbrowscap
主編程語言PHP
編程語言PHP (語言數: 1)
平台
許可證MIT License
所有者活动
創建於2010-03-25 10:34:44
推送於2018-05-23 14:37:11
最后一次提交2014-02-04 10:18:51
發布數4
最新版本名稱2.0 (發布於 2014-02-04 10:20:20)
第一版名稱v1.0 (發布於 2012-02-07 02:35:44)
用户参与
星數430
關注者數19
派生數68
提交數62
已啟用問題?
問題數51
打開的問題數23
拉請求數10
打開的拉請求數11
關閉的拉請求數7
项目设置
已啟用Wiki?
已存檔?
是復刻?
已鎖定?
是鏡像?
是私有?