thecodingmachine / graphqlite
使用webonyx/graphql-php编写简单易写的控制器来编写你的GraphQL查询。
v7.0.0
2024-03-20 05:50 UTC
Requires
- php: >=8.1
- ext-json: *
- composer/package-versions-deprecated: ^1.8
- doctrine/annotations: ^1.14 || ^2.0
- kcs/class-finder: ^0.4.0
- phpdocumentor/reflection-docblock: ^4.3 || ^5.0
- phpdocumentor/type-resolver: ^1.4
- psr/container: ^1.1 || ^2
- psr/http-factory: ^1
- psr/http-message: ^1.0.1 || ^2.0
- psr/http-server-handler: ^1
- psr/http-server-middleware: ^1
- psr/simple-cache: ^1.0.1 || ^2 || ^3
- symfony/cache: ^4.3 || ^5 || ^6 || ^7
- symfony/expression-language: ^4 || ^5 || ^6 || ^7
- thecodingmachine/cache-utils: ^1
- webonyx/graphql-php: ^v15.0
Requires (Dev)
- beberlei/porpaginas: ^1.2 || ^2.0
- doctrine/coding-standard: ^11.0 || ^12.0
- ecodev/graphql-upload: ^7.0
- laminas/laminas-diactoros: ^2 || ^3
- myclabs/php-enum: ^1.6.6
- php-coveralls/php-coveralls: ^2.1
- phpstan/extension-installer: ^1.1
- phpstan/phpstan: ^1.9
- phpunit/phpunit: ^8.5.19 || ^9.5.8
- symfony/var-dumper: ^5.4 || ^6.0 || ^7
- thecodingmachine/phpstan-strict-rules: ^1.0
Suggests
- beberlei/porpaginas: If you want automatic pagination in your GraphQL types
- ecodev/graphql-upload: If you want to support file upload inside GraphQL input types
- v7.0.0
- v6.2.3
- v6.2.2
- v6.2.1
- v6.2.0
- v6.1.0
- v6.0.0
- 5.0.x-dev
- dev-master / 5.0.x-dev
- v5.0.3
- v5.0.2
- v5.0.1
- v5.0.0
- v4.3.0
- v4.1.2
- v4.1.1
- v4.1.0
- 4.0.x-dev
- v4.0.3
- v4.0.2
- v4.0.1
- v4.0.0
- 3.1.x-dev
- v3.1.4
- v3.1.3
- v3.1.2
- v3.1.1
- v3.1.0
- 3.0.x-dev
- v3.0.1
- v3.0.0
- dev-dependabot-github_actions-JamesIves-github-pages-deploy-action-4.6.4
- dev-dependabot-github_actions-JamesIves-github-pages-deploy-action-4.6.3
- dev-dependabot-github_actions-actions-upload-artifact-4
- dev-snyk-upgrade-4b859eae02860ba2db764d2ef95b07f1
- dev-dependabot-composer-phpunit-phpunit-tw-8.5.19or-tw-9.5.8or-tw-10.0.0
- dev-snyk-upgrade-eb194ee4b262406edd1dbdb2529c16a3
- dev-snyk-upgrade-9bb9dd3f5f0ffb24ec0c97194d8038fc
This package is auto-updated.
Last update: 2024-09-02 20:43:09 UTC
README
GraphQLite
让PHP中的GraphQL变得简单。
一个PHP的GraphQL库,允许你使用属性(或注解)来定义你的模式,并使用简单易写的控制器来编写查询和突变。
功能
基本示例
首先,在你的控制器中声明一个突变
class ProductController { #[Mutation] public function updateProduct(Product $product): Product { // Some code that gets and updates a Product return $product; } }
然后,注释Product
类以声明暴露给GraphQL API的字段
#[Type] #[Input(update: true)] class Product { #[Field] public function getName(): string { return $this->name; } #[Field] public function setName(string $name): void { $this->name = $name; } // ... }
就这样,你已经准备好开始🎉突变操作了!
{ updateProduct(product: { name: 'John Doe' }) { name } }
想了解更多?前往文档!
贡献
通过pull请求欢迎贡献。如果你想在提交PR之前进行讨论,请考虑在讨论。如果是bug/问题,你可以在提交问题之前。
所有PR都应该有足够的测试覆盖率,以添加或更改任何内容。没有这些,PR将不会被合并。