joelalejandro/descanse

为PHP提供的超级简单的路由

dev-master 2013-11-22 04:34 UTC

This package is not auto-updated.

Last update: 2024-09-24 01:02:53 UTC


README

一个真正简单的PHP API框架。

名称

"Descanse"是西班牙语中"休息"的翻译。

需求

PHP >= 5.3.0

用法

  1. 将此存储库中包含的 .htaccess 文件添加到项目中。此文件将所有传入请求重定向到单个分发器。
  2. 创建一个分发器文件(例如 index.php),该文件包含 Descanse 核心库。
  3. 创建一个以"Service"结尾的类(例如 UserService、SearchService等)。
  4. 在该类中创建一个以get、post、put或delete开头的方法(例如getUser、postUser、putUser、deleteUser等)。该方法必须返回PHP类型、对象或数组。
  5. 在分发器中包含Service类(默认情况下会自动完成)。
  6. 让Descanse运行!

Service类示例

 "Joel", "last" => "Villarreal");
}
}
?>

分发器

指南

  • Descanse会自动创建路由。因此,UserProfileService变成/userprofile/,UserProfileService::getUserData()变成GET /userprofile/userdata。
  • Service类中的所有方法都必须是静态的。
  • Service类中的所有方法都必须包含一个$context参数,该参数包含一个数组,其中包含两个键:request(包含$_REQUEST数据)和args(包含URL中第二个斜杠之后的所有slugs,即如果路由是/userprofile/userdata/1/abc/3f,则args将包含[0] => 1, [1] => abc, [2] => 3f)。
  • 所有方法都必须以getpostputdelete开头。
  • 如果您想更改Descanse的默认设置,可以在调用Descanse::go()之前使用Descanse::$settings
  • 'Accept'头定义了API方法的输出。如果Accept是'application/json',它将自动编码数据。更多编码器正在开发中!

设置

  • auto_register:如果为true,将在所有声明的类中搜索以"Service"结尾的类,如果为false,则允许手动注册。为此,请使用Descanse::registerService($name)方法。

许可证

Descanse采用MIT许可证。