यह अनुभाग बताता है कि 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
नेविगेट कर सकते हैं
नमस्ते दुनिया!
हमने एक गतिशील मार्ग को भी परिभाषित किया है। http://localhost:8080/hello/<YOUR_NAME>
स्थान पर अपने पहले Silex ऐप द्वारा अपने नाम के साथ <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 के साथ आरंभ करने के लिए संगीतकार सबसे लचीला तरीका है। अपने Silex आवेदन (नाम की मेजबानी के लिए एक निर्देशिका बनाने ProjectRoot
ऊपर), cd
उस निर्देशिका के लिए और एक बनाने के लिए निम्न आदेश चला composer.json
फ़ाइल:
composer require silex/silex "~2.0"
यह ProjectRoot
अंतर्गत, vendor
निर्देशिका में कुछ फ़ाइलों और निर्देशिकाओं को ProjectRoot
।
उसके बाद, आपको केवल vendor/autoload.php
ProjectRoot/web
. index.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>