graphene / graphene
PHP rest 框架
0.3.4
2018-11-17 12:29 UTC
Requires
- php: >=5.6.0
- apache/log4php: ^2.3
This package is auto-updated.
Last update: 2024-09-16 11:02:58 UTC
README
这个框架允许你用更少的代码行创建面向动作的 REST 服务,如下所示
class HelloWorld extends Action{ public function run () { $this->sendMessage('Hello world'); } }
使用 composer 安装 Graphene
Graphene 可以使用 composer 安装
composer require graphene/graphene
安装后,你可以通过以下命令启动你的应用程序
cp ./vendor/graphene/graphene/_installation/* .
此命令从下载的 Graphene 库中提取
- index.php 包含简单的 Graphene 启动器
- settings.php 包含日志记录和持久化设置
- cli.php Graphene 的简单 CLI 适配器
- .htaccess Apache 文件,包含 URL 重写和重定向到
index.php
- web.config 与
.htaccess
相同,用于 Windows ISS
Graphene 设置文件
[正在进行中]
动作方法
任何对 Graphene 的 HTTP 请求都与一个“动作”匹配。在 Graphene 中,动作映射快速且智能,动作被收集在单独的模块中。
定义模块
您可以通过在 settings.json 中定义的 moduleUrl 创建文件夹来定义您的模块。
{ "v" : "0.1.1", "info": { "version" : "0.0.0.1", "name" : "com.profile", "namespace" : "profiles", "author" : "Me [me@mail.com]", "support" : "meMod.com" }, "actions": [] }
在这种情况下,我们创建了一个名为 "com.profile" 的模块,其命名空间为 "profiles"。此模块没有任何动作。
创建动作
现在我们可以创建一个简单的动作 "HELLO_WORLD",将其映射到请求 GET host/profiles/hello,您可以通过在模块清单中创建此条目来添加此动作
{"name":"HELLO_WORLD", "query":"hello"}
并在 actions
文件夹中创建 profiles.HELLO_WORLD.php
文件,如下所示
namespace profiles; class HelloWorld extends Action{ public function run () { $this->sendMessage('Hello world'); } }
模型
Graphene 支持模型检查和存储 正在进行中
脚手架
当你创建一个新的模块时,我们推荐以下目录结构用于你的模型和动作
_module namespace_
+--manifest.json
+--models
| |--ModelClassA.php
| |--ModelClassB.php
| |--Mod...
+--actions
| |--namespace.ACTION_NAME_A.php
| |--namespace.ACTION_NAME_B.php
| |--namespace...
Wiki
我们非常高兴你想使用 Graphene,因此我们正在努力编写最新的 wiki,以便你可以充分利用它。请访问 Graphene wiki
如何使用
你好世界 教程