74 lines
2.1 KiB
Markdown
74 lines
2.1 KiB
Markdown
WellRESTed
|
|
==========
|
|
|
|
[](https://travis-ci.org/pjdietz/wellrested)
|
|
|
|
WellRESTed is a micro-framework for creating RESTful APIs in PHP. It provides a lightweight yet powerful routing system and classes to make working with HTTP requests and responses clean and easy.
|
|
|
|
Requirements
|
|
------------
|
|
|
|
- PHP 5.3
|
|
- [PHP cURL](http://php.net/manual/en/book.curl.php) for making requests with the [`Client`](src/pjdietz/WellRESTed/Client.php) class (Optional)
|
|
|
|
|
|
Install
|
|
-------
|
|
|
|
Add an entry for "pjdietz/wellrested" to your composer.json file's `require` property. If you are not already using Composer, create a file in your project called "composer.json" with the following content:
|
|
|
|
```json
|
|
{
|
|
"require": {
|
|
"pjdietz/wellrested": "~2.3"
|
|
}
|
|
}
|
|
```
|
|
|
|
Use Composer to download and install WellRESTed. Run these commands from the directory containing the **composer.json** file.
|
|
|
|
```bash
|
|
$ curl -s https://getcomposer.org/installer | php
|
|
$ php composer.phar install
|
|
```
|
|
|
|
You can now use WellRESTed by including the `vendor/autoload.php` file generated by Composer.
|
|
|
|
|
|
Overview
|
|
--------
|
|
|
|
WellRESTed's primary goal is to facilitate mapping of URIs to classes that will provide or accept representations. To do this, create a [`Router`](src/pjdietz/WellRESTed/Router.php) instance and load it up with some routes.
|
|
|
|
```php
|
|
use pjdietz\WellRESTed\Response;
|
|
use pjdietz\WellRESTed\Router;
|
|
|
|
require_once "vendor/autoload.php";
|
|
|
|
// Create a new router.
|
|
$router = new Router();
|
|
|
|
// Populate the router with routes.
|
|
$router->add(
|
|
["/", "\\MyApi\\RootHandler"],
|
|
["/cats/", "\\MyApi\\CatHandler"],
|
|
["/dogs/*", "\\MyApi\\DogHandler"],
|
|
["/guinea-pigs/{id}", "\\MyApi\\GuineaPigHandler"],
|
|
["~/hamsters/([0-9]+)~", "\\MyApi\\HamsterHandler"]
|
|
);
|
|
|
|
// Output a response based on the request sent to the server.
|
|
$router->respond();
|
|
```
|
|
|
|
Documentation
|
|
-------------
|
|
|
|
See [the documentation](http://wellrested.readthedocs.org/en/stable/) to get started.
|
|
|
|
Copyright and License
|
|
---------------------
|
|
Copyright © 2015 by PJ Dietz
|
|
Licensed under the [MIT license](http://opensource.org/licenses/MIT)
|