Bagaimana untuk menggunakan rangka kerja Symfony8 dalam php?

王林
Lepaskan: 2023-06-04 08:44:02
asal
1315 orang telah melayarinya

Memandangkan keperluan aplikasi moden menjadi semakin kompleks, menggunakan rangka kerja untuk membangunkan aplikasi telah menjadi trend yang tidak dapat dielakkan. Symfony ialah rangka kerja PHP yang diiktiraf secara meluas yang direka untuk membina aplikasi web berkualiti tinggi. Symfony 8 ialah versi terkini rangka kerja Symfony, yang menawarkan banyak ciri dan peningkatan baharu. Dalam artikel ini, kami akan mendalami cara menggunakan rangka kerja Symfony 8.

1. Pasang Symfony 8

Sebelum anda mula menggunakan Symfony 8, anda perlu memasang PHP, Composer dan Symfony 8 pada komputer tempatan anda. Selepas memasang Komposer pada mesin tempatan anda, anda boleh membuka antara muka baris arahan dan jalankan arahan berikut untuk memasang Symfony 8:

composer create-project symfony/website-skeleton my_project_name
Salin selepas log masuk

Perintah ini akan memuat turun Symfony 8 daripada repositori Komposer dan memasangnya dalam fail projek anda Clamped . Setelah pemasangan selesai, anda boleh memulakan pelayan web terbina dalam Symfony 8 dengan menjalankan arahan berikut dalam folder projek anda:

cd my_project_name
symfony server:start
Salin selepas log masuk

Kini anda boleh melihat Symfony 8 dengan menaip http://localhost:8000 dalam anda pelayar halaman Selamat datang.

2. Cipta pengawal

Dalam Symfony 8, anda boleh menggunakan pengawal untuk mengendalikan penghalaan dan permintaan. Pengawal ialah kelas PHP mudah yang menerima permintaan daripada pengguna dan menghantarnya ke fungsi yang sesuai. Seterusnya, kami akan mencipta pengawal pembentangan.

  1. Mula-mula, buat fail baharu bernama DemoController.php dalam folder src/Controller. Kemudian, masukkan kod berikut dalam fail:
namespace AppController;

use SymfonyComponentHttpFoundationResponse;
use SymfonyComponentRoutingAnnotationRoute;

class DemoController
{
    /**
     * @Route("/demo")
     */
    public function index()
    {
        return new Response('Hello, World!');
    }
}
Salin selepas log masuk

Dalam pengawal ini, kami menggunakan mekanisme penghalaan anotasi Symfony 8 untuk menghalakan laluan ke laluan /demo dan mengembalikan respons 'teks/plain' Returns 'Hello, Dunia!'.

  1. Seterusnya, buka fail route.yaml dalam folder konfigurasi dan tambah kandungan berikut:
# config/routes.yaml
demo:
    path: /demo
    controller: AppControllerDemoController::index
Salin selepas log masuk

Dalam konfigurasi ini, kami memetakan laluan ke laluan /demo, dan gunakan kaedah indeks DemoController sebagai pemproses laluan.

  1. Akhir sekali, mulakan pelayan web terbina dalam Symfony 8 dan masukkan http://localhost:8000/demo dalam penyemak imbas anda. Anda seharusnya melihat mesej "Hello, World!" dalam penyemak imbas anda.

3. Gunakan enjin templat Twig

Twig ialah enjin templat lalai dalam rangka kerja Symfony 8. Ia ialah enjin templat lanjutan yang menyediakan banyak ciri dan alatan berguna seperti pewarisan dan reka letak templat. Seterusnya, kita akan belajar cara menggunakan enjin templat Twig dalam aplikasi Symfony 8.

  1. Mula-mula, buat fail baharu yang dipanggil twig.yaml dalam config/packages dan tambah konfigurasi berikut:
# config/packages/twig.yaml
twig:
    default_path: '%kernel.project_dir%/templates'
Salin selepas log masuk

Dalam konfigurasi ini, kami tentukan Laluan lalai ke direktori templat.

  1. Seterusnya, buat fail baharu yang dipanggil base.html.twig dalam folder templat dan tambah kod berikut:
<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8" />
        {% block title %}
            <title>{% endblock %}</title>
        {% endblock %}
    </head>
    <body>
        {% block body %}
        {% endblock %}
    </body>
</html>
Salin selepas log masuk

Dalam kod ini, Kami menggunakan fungsi blok Twig untuk menentukan tajuk dan kandungan templat.

  1. Sekarang, buat fail baharu yang dipanggil demo.html.twig dalam folder templat dan tambah kod berikut:
{% extends 'base.html.twig' %}

{% block title %}Demo Page{% endblock %}

{% block body %}
    <h1>Hello, World!</h1>
{% endblock %}
Salin selepas log masuk

Dalam kod ini, kami The base.html templat .twig dilanjutkan dan tajuk dan kandungan halaman ditentukan.

  1. Akhir sekali, kemas kini kelas DemoController untuk menggunakan enjin templat Twig untuk memaparkan templat demo.html.twig. Tambahkan kod berikut:
namespace AppController;

use SymfonyBundleFrameworkBundleControllerAbstractController;
use SymfonyComponentHttpFoundationResponse;
use SymfonyComponentRoutingAnnotationRoute;

class DemoController extends AbstractController
{
    /**
     * @Route("/demo")
     */
    public function index()
    {
        return $this->render('demo.html.twig', [
            'message' => 'Hello, World!',
        ]);
    }
}
Salin selepas log masuk

Dalam kod ini, kami menggunakan kaedah render untuk memaparkan templat demo.html.twig dan menggunakan parameter mesej untuk menghantar mesej ke dalam templat.

  1. Mulakan pelayan web terbina dalam Symfony 8 sekali lagi dan masukkan http://localhost:8000/demo dalam penyemak imbas. Anda sepatutnya melihat halaman "Hello, World" yang lebih cantik dan interaktif dalam penyemak imbas anda.

Ringkasnya, Symfony ialah rangka kerja PHP yang berkuasa dengan sokongan komuniti yang meluas dan dokumentasi yang luas. Dalam Symfony 8, banyak ciri dan peningkatan baharu membantu anda membangunkan aplikasi web berkualiti tinggi dengan mudah. Menggunakan enjin templat Twig boleh membantu anda mencipta halaman yang lebih cantik dan interaktif. Kini anda tahu cara menggunakan rangka kerja Symfony 8!

Atas ialah kandungan terperinci Bagaimana untuk menggunakan rangka kerja Symfony8 dalam php?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!