engineered / sprykerphpbridge
Spryker Glue API 的 PHP 封装
Requires
- php: >=8.0
- gacela-project/gacela: ^0.28
- symfony/console: ^5.4
- symfony/http-client: ^6.0
Requires (Dev)
- friendsofphp/php-cs-fixer: ^3.13
- phpstan/phpstan: ^1.8
- phpunit/phpunit: ^9.5
- roave/security-advisories: dev-latest
- vimeo/psalm: ^4.29
This package is not auto-updated.
Last update: 2024-09-29 19:45:53 UTC
README
Spryker Glue API 的 PHP 封装。
使用 PHP 编写,采用 Gacela
问题:这个包做什么,为什么有用?
回答:这个包允许您轻松地在第三方 PHP 应用程序中与 Spryker Glue API 交互。
问题:那么...嗯...为什么?为什么不直接使用 Spryker...?它已经是一个很好的 PHP 应用程序了!
回答:我们了解...!但这个包允许您在任何 PHP 应用程序中使用 Spryker 数据...!
安装
composer require engineered/sprykerphpbridge
示例
要查看完整示例,请 点击此处。
<?php require __DIR__ . '/vendor/autoload.php'; // Change YOUR_GLUE_URL to something like: 'https://glue.de.b2c.demo-spryker.com' $sprykerBridge = SprykerBridge::create(YOUR_GLUE_URL); // get the category trees $categoryTress = $sprykerBridge->category()->getTrees();
//outputs
{
"data": [
{
"type": "category-trees",
"id": null,
"attributes": {
"categoryNodesStorage": [
{
"nodeId": 5,
"order": 100,
"name": "Computers",
"url": "/en/computers",
... (etc) ...
},
]
},
"links": {
"self": "https://glue.de.b2c.demo-spryker.com/category-trees"
}
}
],
"links": {
"self": "https://glue.de.b2c.demo-spryker.com/category-trees"
}
}
使用 Docker 进行开发(可选)
只需安装并运行 docker,然后在项目的根目录下运行 make
,您就会拥有所有开发所需的东西。每个开发人员都会使用相同的 PHP 和 Composer 版本。
此命令执行以下操作
- 构建开发所需的带有所需二进制的 Docker 映像(php、composer 以及其他内容)
- 使用 composer 安装依赖项
- 设置 git 钩子
- 启动开发堆栈
默认情况下,PHP 容器执行一个虚拟的长运行进程,因此容器始终处于运行状态。您可以在 PHPStorm 中配置一个指向该运行容器的远程解释器,以运行测试套件并获取代码分析。
当您完成工作后,make stop
就是您的最佳选择。
您仍然可以使用自己的 PHP 版本,但这样做可能会因为不兼容或安装/升级依赖项的问题而导致您的更改被拒绝。
运行命令
Makefile 上预定义了一些命令来运行最常见的任务。
您可以通过运行 make pr
来获取您代码的整体质量反馈。您还可以运行 make statica
来执行静态分析,make fmt
来根据项目中定义的 PHP CS Fixer 标准格式化代码,或 make test
来运行测试套件。所有这些都在 Docker 堆栈上运行,所以请确保使用 make boot
使您的服务处于运行状态。
如果您想安装包或运行特定命令,最好通过 Docker 堆栈来操作。因此,composer install 将看起来像这样
docker-compose exec lib composer install
这相当长,所以有两种替代方案
首先,您可以创建 docker-compose
的别名,例如 dc
dc exec lib composer install
另一个选项是运行 make shell
并直接在容器中打开一个 shell。然后您可以在容器中运行命令,就像您在自己的机器上一样
composer install
Git 钩子
git 钩子验证您的代码是否适合合并。默认情况下,安装了一个 pre-commit 钩子,每次提交都会运行 make pr
。
您始终可以使用 --no-verify
标志来绕过 git 钩子
git commit -m 'your message' --no-verify
但我喜欢默认使用它们,以捕获潜在的易于检查的错误。