このセクションでは、silexの概要と、開発者がそれを使用する理由について概要を説明します。
また、サイレックス内の大きな科目についても言及し、関連するトピックにリンクする必要があります。 silexのドキュメンテーションは新しいものなので、これらの関連トピックの初期バージョンを作成する必要があります。
vendor
ディレクトリと同じフォルダにweb
ディレクトリを作成します。コンテンツを含むweb
ディレクトリにindex.php
ファイルを作成する
<?php // web/index.php require_once __DIR__.'/../vendor/autoload.php'; $app = new Silex\Application(); $app->get("/", function () { return "Hello world!"; }); $app->get("/hello/{name}", function ($name) use ($app) { return "Hello ".$app->escape($name); }); $app->run();
PHP 組み込みサーバーを使用してアプリケーションを起動するには
php -S localhost:8080 -t web
これで、ブラウザを開いてhttp://localhost:8080
に移動し、
"こんにちは世界"
1つの動的ルートも定義しました。最初のSilexアプリケーションで<YOUR_NAME>
ために、自分の名前で<YOUR_NAME>
をhttp://localhost:8080/hello/<YOUR_NAME>
に<YOUR_NAME>
してください。
ベストプラクティスを遵守するためにディレクトリ構造を次のように考慮してください。
[ProjectRoot]
|---[app]
| |---[resources]
| routes.php
|---[web]
| |---[resources]
| | |---[css]
| | |---[img]
| | |---[js]
| .htaccess
| index.php
|---[src]
|---[var]
|---[vendor]
composer.json
composer.lock
作曲家はSilexを使い始めるのに最も柔軟な方法です。あなたサイレックスの(名前付きアプリケーションホストするディレクトリを作成しますProjectRoot
以上)、 cd
そのディレクトリにして作成するには、以下のコマンドを実行しますcomposer.json
ファイルを:
composer require silex/silex "~2.0"
これは、いくつかのファイルとディレクトリをProjectRoot
vendor
ディレクトリに追加します。
その後、 vendor/autoload.php
ファイルが必要で、 index.php
ファイルのProjectRoot/web
にSilex\Application
インスタンスを作成するだけです。あなたのコントローラ定義( routes.php
)の後、あなたのアプリケーションでrun
メソッドを呼び出します:
ProjectRoot / web / index.php
require_once __DIR__ . '/../vendor/autoload.php';
$app = new Silex\Application();
require_once __DIR__ . '/../app/routes.php';
$app->run();
ProjectRoot / app / routes.php
$app->get("/", function () {
return new \Symfony\Component\HttpFoundation\Response('Hello World!');
});
ProjectRoot / web / .htaccess
<IfModule mod_rewrite.c>
Options -MultiViews
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [QSA,L]
</IfModule>