fobiaweb/slim

Slim 框架,一个 PHP 微型框架

3.0.2 2014-08-03 17:29 UTC

This package is auto-updated.

Last update: 2024-09-06 23:46:45 UTC


README

Build Status Slim 是一个 PHP 微型框架,可以帮助您快速编写简单而强大的 Web 应用程序和 API。Slim 对初学者和专业人士都易于使用。Slim 倾向于简洁而不是简短,并倾向于常见情况而不是边缘情况。其界面简单、直观,并且有详尽的文档,包括在线和代码本身。感谢您选择 Slim 框架作为您的下一个项目。我相信您会喜欢的。

特性

  • 强大的路由器
    • 标准和自定义 HTTP 方法
    • 带有通配符和条件的路由参数
    • 路由重定向、停止和传递
    • 路由中间件
  • 资源定位器和 DI 容器
  • 带有自定义视图的模板渲染
  • 闪存消息
  • 使用 AES-256 加密的加密cookie
  • HTTP 缓存
  • 带有自定义日志编写器的日志记录
  • 错误处理和调试
  • 中间件和钩子架构
  • 简单的配置

入门

安装

您可以使用 Composer(推荐)或手动安装 Slim 框架。

阅读如何安装 Slim

系统要求

您需要 PHP >= 5.3.0。如果您使用加密 cookie,还需要 mcrypt 扩展。

入门教程

实例化 Slim 应用程序

$app = new \Slim\App();

定义 HTTP GET 路由

$app->get('/hello/:name', function ($name) {
    echo "Hello, $name";
});

运行 Slim 应用程序

$app->run();

设置您的 Web 服务器

Apache

确保 .htaccessindex.php 文件位于同一公开访问的目录中。该 .htaccess 文件应包含此代码

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [QSA,L]

此外,请确保您的虚拟主机配置了 AllowOverride 选项,以便可以使用 .htaccess 重写规则

AllowOverride All

Nginx

Nginx 配置文件应在您的 location 块中包含此代码(以及其他您可能需要的设置)

try_files $uri $uri/ /index.php?$args;

这假设 Slim 的 index.php 位于您项目的根目录中(www 根)。

HipHop 虚拟机(HHVM)

您的 HipHop 虚拟机配置文件应包含此代码(以及其他您可能需要的设置)。确保将 ServerRoot 设置更改为指向您的 Slim 应用程序的文档根目录。

Server {
    SourceRoot = /path/to/public/directory
}

ServerVariables {
    SCRIPT_NAME = /index.php
}

VirtualHost {
    * {
        Pattern = .*
        RewriteRules {
                * {
                        pattern = ^(.*)$
                        to = index.php/$1
                        qsa = true
                }
        }
    }
}

lighttpd

您的 lighttpd 配置文件应包含此代码(以及其他您可能需要的设置)。此代码需要 lighttpd >= 1.4.24。

url.rewrite-if-not-file = ("(.*)" => "/index.php/$0")

这假设 Slim 的 index.php 位于您项目的根目录中(www 根)。

IIS

确保 Web.configindex.php 文件位于同一公开访问的目录中。该 Web.config 文件应包含此代码

<?xml version="1.0" encoding="UTF-8"?>
<configuration>
    <system.webServer>
        <rewrite>
            <rules>
                <rule name="slim" patternSyntax="Wildcard">
                    <match url="*" />
                    <conditions>
                        <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
                        <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
                    </conditions>
                    <action type="Rewrite" url="index.php" />
                </rule>
            </rules>
        </rewrite>
    </system.webServer>
</configuration>

文档

http://docs.slimframework.com/

作者

Slim 框架由 Josh Lockhart 创建和维护。Josh 是 New Media Campaigns 的资深 Web 开发人员 New Media Campaigns。Josh 还创建并维护了 PHP: The Right Way,这是一个在 PHP 社区中流行的运动,旨在向新的 PHP 程序员介绍最佳实践和良好信息。

许可

Slim 框架在 MIT 公共许可证下发布。

https://slim.php.ac.cn/license