Symfony Nedir ve Neden Kullanmalısınız?
Eğer hızla projelerinize başlamak istiyorsanız, Symfony'nin standart yapısı ve bileşenleriyle çok işinizi kolaylaştırabilirsiniz.
Symfony Kurulumu: Adım Adım Rehber
# 1. Gereksinimleri Kontrol Edin
# 2. Symfony Installer'ı İndirin
```bash
curl -sS https://get.symfony.com/cli/installer | bash
```
Yukarıdaki komut, Symfony Installer’ı indirip kuracaktır. Kurulum tamamlandığında, `symfony` komutunu kullanarak Symfony'yi yönetebilirsiniz.
# 3. Symfony Projesi Oluşturun
```bash
symfony new my_project_name --full
```
Bu komut, Symfony’nin tam özellikli (full) kurulumunu yapacaktır. Projeniz için belirlediğiniz adı `my_project_name` kısmına yazabilirsiniz.
# 4. Web Sunucusunu Başlatın
```bash
cd my_project_name
symfony serve
```
Bu komut ile Symfony uygulamanız, yerel sunucuda çalışmaya başlayacaktır. Artık web tarayıcınızda `http://localhost:8000` adresine giderek uygulamanızı görebilirsiniz.
Symfony'de İlk Geliştirme Adımlarınız
# 1. Route ve Controller Oluşturma
```php
// src/Controller/HomeController.php
namespace App\Controller;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Annotation\Route;
class HomeController
{
/
* @Route("/", name="home")
*/
public function index(): Response
{
return new Response('
Merhaba Symfony!
');}
}
```
Bu basit controller, anasayfa için bir route tanımlar ve kullanıcıya "Merhaba Symfony!" mesajını gösterir. `@Route("/")` kısmı, bu fonksiyonun `/` yoluna yönlendirileceğini belirtir.
# 2. Twig ile Şablonlar Kullanma
İlk olarak, `templates` dizininde `home/index.html.twig` dosyasını oluşturun ve aşağıdaki Twig kodunu ekleyin:
```twig
Merhaba Symfony!
Bu, Symfony uygulamanızdaki ilk şablon!
```
Sonrasında, controller’ınızı güncelleyin:
```php
// src/Controller/HomeController.php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\Routing\Annotation\Route;
class HomeController extends AbstractController
{
/
* @Route("/", name="home")
*/
public function index()
{
return $this->render('home/index.html.twig');
}
}
```
Burada, `render()` fonksiyonu ile Twig şablonunu çağırarak HTML içeriğini görüntülüyoruz. Bu sayede controller'ınız temiz ve anlaşılır kalır.
# 3. Veritabanı Bağlantısı ve Doctrine Kullanımı
```dotenv
DATABASE_URL="mysql://root:root@127.0.0.1:3306/my_database"
```
Veritabanı ile iletişim kurabilmek için önce bir entity (varlık) oluşturmanız gerekmektedir. Örnek olarak, `Product` adında bir entity oluşturabilirsiniz:
```php
// src/Entity/Product.php
namespace App\Entity;
use Doctrine\ORM\Mapping as ORM;
/
* @ORM\Entity(repositoryClass="App\Repository\ProductRepository")
*/
class Product
{
// ID ve diğer alanlar
}
```
Sonrasında, veritabanını güncellemek için şu komutu çalıştırabilirsiniz:
```bash
php bin/console doctrine:schema:update --force
```
Bu komut, veritabanı şemasını günceller ve entity’nizi veritabanına yansıtır.
Symfony ile Geliştirmenin Keyfini Çıkarın
Unutmayın, Symfony her zaman genişletilebilir ve modülerdir. Kendi uygulamanızı oluştururken, Symfony'nin sunduğu çok sayıda bileşenle çalışma fırsatını kaçırmayın. Geliştirme süreci, sizin için hem öğretici hem de eğlenceli olacaktır!