Slim 简单而强大的 PHP 微型 Web 开发框架

发布于 2017-10-13 21:38:35 字数 2760 浏览 3310 评论 0

Slim 是一款基于 PHP 的web开发微框架,帮助 PHP 开发者快速编写简单强大的 Web 应用和 API。Slim的接口简单而符合直觉,文档也很详细。

Slim 简单而强大的 PHP 微型 Web 开发框架

use \Psr\Http\Message\ServerRequestInterface as Request;
use \Psr\Http\Message\ResponseInterface as Response;

require 'vendor/autoload.php';

$app = new \Slim\App;
$app->get('/hello/{name}', function (Request $request, Response $response) {
    $name = $request->getAttribute('name');
    $response->getBody()->write("Hello, $name");

    return $response;
});
$app->run();

下载 & 安装

我们推荐你使用 Composer 这个依赖管理器来安装 Slim 框架。

使用 Slim 开始你的项目的最简单的方法,就是使用 Slim-Skeleon 作为基础骨架。运行以下 bash 命令:

$ php composer.phar create-project slim/slim-skeleton [my-app-name]

用你的应用程序所需的目录名称来替换 [my-app-name]

然后,你可以使用 PHP 的内置 Web 服务器来运行程序:

$ cd [my-app-name]; php -S 0.0.0.0:8080 -t public public/index.php

使用 Composer 进行安装

首先在你的项目中安装 Composer:

curl -s https://getcomposer.org/installer | php

然后在你的项目根目录中建立名为 composer.json 的文件:

{
    "require": {
        "slim/slim": "2.*"
    }
}

通过 composer 进行安装:

php composer.phar install

添加下列代码到应用的 index.php 文件中:

require 'vendor/autoload.php';

特色

HTTP 路由

Slim 提供了快速强大的路由器,它能将路由映射到特定的 HTTP 请求方法和 URI 。它支持参数和模式匹配。

中间件

使用同心中间件构建你的应用程序来处理你的 Slim 应用程序的 HTTP请求对象和响应对象。

PSR-7 支持

Slim 支持任意 PSR-7 消息实现方法,所以你可以检查和处理 HTTP 消息的方法、状态、URI、头、cookies和体。

依赖注入

Slim 支持依赖注入,所以你能完全控制你的外部工具。使用任意 Container-Interop 容器。

系统依赖

  • PHP 5.3.0 或以上
  • 如果你需要对cookies进行加密,则还需要 mcrypt 拓展。

配置

Slim 框架提供了两种方式对其进行配置。一种是在生成实例的时候进行参数设置,另一种则是在生成实例之后。所有的设置参数都可以在生成实例的时候以数组的形式传递给 Slim 的构造函数(constructor)。所有的设置参数都可以在生成实例之后获取或者修改,但是有些设置并不能简单的只依靠应用实例的 config 函数来完成,因此有必要在后面额外说明。在我罗列这些有效设置参数之前,我想简单的介绍下怎么定义或检查 Slim 应用的参数设置。

相关链接

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

JSmiles

生命进入颠沛而奔忙的本质状态,并将以不断告别和相遇的陈旧方式继续下去。

0 文章
0 评论
84961 人气
更多

推荐作者

醉城メ夜风

文章 0 评论 0

远昼

文章 0 评论 0

平生欢

文章 0 评论 0

微凉

文章 0 评论 0

Honwey

文章 0 评论 0

qq_ikhFfg

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文