安裝或設定

請考慮遵循以下目錄結構以符合最佳實踐:

[ProjectRoot]
    |---[app]
    |    |---[resources]
    |    routes.php
    |---[web]
    |    |---[resources]
    |    |    |---[css]
    |    |    |---[img]
    |    |    |---[js]
    |    .htaccess
    |    index.php
    |---[src]
    |---[var]
    |---[vendor]
    composer.json
    composer.lock

Composer 是最靈活的 Silex 入門方式。建立一個目錄來託管你的 Silex 應用程式(上面命名為 ProjectRoot),cd 到該目錄並執行以下命令來建立 composer.json 檔案:

composer require silex/silex "~2.0"

這將在 ProjectRoot 下的 vendor 目錄中新增一些檔案和目錄。

之後,你需要做的就是需要 vendor/autoload.php 檔案,並在 ProjectRoot/web 下的 index.php 檔案中建立一個 Silex\Application 例項。在你的控制器定義(routes.php)之後,在你的應用程式上呼叫 run 方法:

ProjectRoot /網路/ index.php 檔案

require_once __DIR__ . '/../vendor/autoload.php';

$app = new Silex\Application();
require_once __DIR__ . '/../app/routes.php';

$app->run();

ProjectRoot /應用/ routes.php 檔案

$app->get("/", function () {
    return new \Symfony\Component\HttpFoundation\Response('Hello World!');
});

ProjectRoot /網路/的 .htaccess

<IfModule mod_rewrite.c>
    Options -MultiViews
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [QSA,L]
</IfModule>