51Degrees / fiftyone.devicedetection
51Degrees Pipeline API 的设备检测引擎。通过解析 HTTP 头部信息来检测硬件、操作系统、浏览器和爬虫信息。
Requires
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.39
- phpstan/phpstan: ^1.10
- phpunit/phpunit: *
- dev-main
- 4.5.4.0
- 4.5.3.0
- 4.5.2.0
- 4.5.1.0
- 4.5.0.0
- 4.4.29.0
- 4.4.28.0
- 4.4.27.0
- 4.4.26.0
- 4.4.25.0
- 4.4.24.0
- 4.4.23.0
- 4.4.22.0
- 4.4.21.0
- 4.4.20.0
- 4.4.19.0
- 4.4.18.0
- 4.4.17.0
- 4.4.16.0
- 4.4.15.0
- 4.4.14.0
- 4.4.13.0
- 4.4.12.0
- 4.4.11.0
- 4.4.10.0
- 4.4.9.0
- 4.4.8.0
- 4.4.7.0
- 4.4.6.0
- 4.4.5.0
- 4.4.4.0
- 4.4.3.0
- 4.4.2
- 4.4.1
- 4.4.0
- 4.3.7
- 4.3.6
- 4.3.4
- 4.3.3
- 4.3.2
- 4.3.1
- 4.3.0
- 4.2.2+4
- 4.2.1+4
- 4.2.0
- 4.1.0
- 4.1.0-beta.14+1
- 4.1.0-beta.13+1
- v4.1.0-beta0012
- v4.1.0-beta0005
- v4.1.0-beta0003
- dev-copyright-update
This package is auto-updated.
Last update: 2024-09-16 20:34:32 UTC
README
简介
此项目包含用于与 Pipeline API 一起使用的 51Degrees 云设备检测引擎的 PHP 实现源代码。
依赖项
在已测试版本页面中显示了当前测试的 PHP 版本。软件可能在其他版本上运行良好,但应采取额外的谨慎。
您需要资源密钥才能使用云 API。您可以使用我们的 配置器创建资源密钥,有关如何使用该配置器的说明,请参阅我们的文档。
示例
注意:示例在 Linux 和 macOS 上运行。我们没有在 Windows 环境中进行测试,因为它是 PHP 的一个罕见选择。
要运行示例,您需要安装 PHP 和 composer。一旦这些可用,安装(或更新)示例所需的依赖项。导航到存储库根目录并执行以下操作:
composer install
或
composer update
如果之前已安装依赖项。
这将创建包含 autoload.php 的 vendor 目录。
在运行示例脚本之前,请确保已将 resource_key
环境变量设置为您的资源密钥。现在导航到示例目录并使用相关文件启动 PHP 服务器。例如
resource_key=YOUR_RESOURCE_KEY php -S localhost:3000 cloud/gettingStartedWeb.php
或
resource_key=YOUR_RESOURCE_KEY php cloud/gettingStartedConsole.php
在终端中运行
这将启动一个本地 Web 服务器,监听端口 3000。打开您的 Web 浏览器,浏览到 https://:3000/ 以查看示例的实际操作。
测试
此存储库包含示例的测试。要运行测试,请确保已安装 PHPUnit,然后在存储库根目录中调用:
phpunit --fail-on-warning --display-warnings --log-junit test-results.xml
本地设备检测
本地设备检测的实现速度更快,但比云版本需要更多的内存和计算能力。不幸的是,通过composer分发本地包将需要包含不允许的二进制可执行文件(.so/.dll)。如果您想使用本地版本,则需要克隆本地仓库,并按照readme文件中的说明构建所需的模块。这是一个相当复杂的过程,如果您遇到困难,请随时联系我们。
开发
在修改此仓库时,可能需要链接到本地开发版本的pipeline依赖项。有关此信息,请参阅Composer本地路径。
例如,如果本地存储了51degrees/fiftyone.pipeline.core
的开发版本,可以通过以下方式添加位置:
"repositories": [
{
"type": "path",
"url": "../../path/to/packages/pipeline-php-core"
}
]
然后,依赖项更改为
"51degrees/fiftyone.pipeline.core": "*"