이 섹션에서는 silex가 무엇인지, 그리고 개발자가 왜 그것을 사용하고 싶어하는지에 대한 개요를 제공합니다.
또한 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
이동하여
안녕하세요!
또한 하나의 동적 경로를 정의했습니다. 첫 번째 Silex 앱이 인사하려면 자신의 이름으로 http://localhost:8080/hello/<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
파일이 필요하고 ProjectRoot/web
의 index.php
파일에 Silex\Application
인스턴스를 생성하기 index.php
됩니다. 컨트롤러 정의 ( 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>