Rumah > Artikel > pembangunan bahagian belakang > Bermula dengan PHP: Symfony Framework
Bermula dengan PHP: Symfony Framework
Disebabkan aplikasinya yang meluas dalam bidang pembangunan web, PHP telah menjadi bahasa pengaturcaraan yang sangat penting. Rangka kerja Symfony, sebagai rangka kerja PHP yang terkemuka, telah mendapat pujian yang meluas, kebolehlanjutan, sokongan komuniti dan sokongan untuk pengaturcaraan berorientasikan objek menjadikannya sangat berguna apabila membangunkan projek berskala besar. Dalam artikel ini, kami akan menyediakan beberapa sumber berguna untuk membantu pemula memahami rangka kerja Symfony dan mula menggunakannya.
Symfony ialah rangka kerja aplikasi web PHP sumber terbuka percuma dan persekitaran pembangunan bersepadu. Ia adalah cara yang cekap untuk bekerja untuk pembangunan web, direka untuk mengoptimumkan produktiviti pembangun dan melaksanakan amalan terbaik.
Symfony terdiri daripada berbilang komponen PHP yang boleh diguna semula. Pustaka lain rangka kerja memanjangkan komponen ini dan mungkin termasuk enjin templat, lapisan abstraksi pangkalan data, pembina borang dan banyak tugas pembangunan web biasa yang lain.
Mula-mula kita perlu memasang Composer, Composer ialah pengurus pakej PHP yang boleh memasang rangka kerja Symfony dengan mudah. Untuk memasang Komposer, lawati http://getcomposer.org dan ikuti tindakan yang diperlukan.
Selepas memasang Komposer, kami boleh menggunakannya untuk memasang rangka kerja Symfony. Jalankan arahan berikut dalam baris arahan:
composer create-project symfony/skeleton my_project_name
Perintah ini akan mencipta direktori bernama my_project_name dalam direktori semasa dan memasang rangka Symfony.
Dalam aplikasi web, paparan ialah segala-galanya yang dilihat pengguna. Enjin templat ranting Symfony menjadikan membina antara muka pengguna dengan sangat mudah. Twig ialah enjin templat moden untuk PHP yang boleh digunakan untuk membina aplikasi web dalam sebarang saiz.
Sintaks Twig sangat ringkas dan mudah dibaca serta diselenggara. Berikut ialah contoh templat Twig:
<!DOCTYPE html> <html> <head> <title>{% block title %}Welcome!{% endblock %}</title> {% block stylesheets %}{% endblock %} </head> <body> {% block body %}{% endblock %} {% block javascripts %}{% endblock %} </body> </html>
Pengawal ialah salah satu komponen penting dalam rangka kerja Symfony, ia biasanya bertanggungjawab untuk mengendalikan permintaan, mendapatkan semula data dan Tunjukkan pandangan yang sesuai. Pengawal hendaklah pendek dan ringkas, dan hendaklah mengikut garis panduan pengekodan berorientasikan objek.
Berikut ialah contoh asas pengawal Symfony:
namespace AppController; use SymfonyComponentHttpFoundationResponse; use SymfonyComponentRoutingAnnotationRoute; class HelloController { /** * @Route("/hello/{name}", name="hello") */ public function hello($name) { return new Response('Hello '.$name); } }
Dalam contoh ini, kami telah mencipta kelas yang dipanggil HelloController yang mengandungi kaedah yang dipanggil hello. Parameter kaedah ini dinamakan $name, yang digunakan untuk menerima parameter daripada URL permintaan. Apabila pengawal diminta, kaedah hello akan mengembalikan respons ringkas yang mengandungi teks "Hello" bersama-sama dengan parameter nama yang diluluskan.
Dalam Symfony, kami boleh mengendalikan pangkalan data dengan mudah menggunakan Doctrine ORM. Doktrin ialah ORM sumber terbuka untuk PHP yang menyediakan cara mudah tetapi berkuasa untuk memanipulasi pangkalan data.
Berikut ialah langkah-langkah untuk mengkonfigurasi Doctrine ORM dalam Symfony:
doctrine: dbal: url: '%env(resolve:DATABASE_URL)%' driver: pdo_mysql
doctrine: orm: auto_generate_proxy_classes: true naming_strategy: doctrine.orm.naming_strategy.underscore_number_aware auto_mapping: true
Berikut ialah contoh pertanyaan pangkalan data menggunakan Symfony EntityManager:
namespace AppController; use SymfonyComponentHttpFoundationResponse; use SymfonyComponentRoutingAnnotationRoute; use DoctrineORMEntityManagerInterface; class HelloController { /** * @Route("/hello/{name}", name="hello") */ public function hello($name, EntityManagerInterface $entityManager) { $user = $entityManager->getRepository('App:User')->find($userId); return new Response('Hello ' . $user->getFirstName()); } }
Dalam pengawal Symfony kita boleh menggunakan definisi laluan Pengendali permintaan berasaskan URL. Symfony menjadikan penentuan laluan sangat mudah dan menyokong parameter dinamik.
Berikut ialah contoh mentakrifkan laluan dalam Symfony:
use SymfonyComponentRoutingAnnotationRoute; class HelloController { /** * @Route("/hello/{name}", name="hello") */ public function hello($name) { return new Response('Hello '.$name); } }
Dalam contoh ini, kami telah menentukan laluan dengan laluan /hello/{name} menggunakan anotasi @Route pada Kelas HelloController. Parameter {name} digunakan untuk memadankan parameter nama yang dihantar dalam URL.
Rangka kerja Symfony menyediakan set alat yang berkuasa dan fleksibel untuk membina aplikasi web moden. Dalam artikel ini, kami menyediakan beberapa sumber dan panduan yang berguna untuk membantu anda memahami rangka kerja Symfony dan mula menggunakannya. Kini anda boleh meneroka lebih banyak ciri Symfony, seperti borang, keselamatan, perkhidmatan dan acara, untuk menggunakan rangka kerja Symfony dengan lebih berkesan semasa pembangunan web.
Atas ialah kandungan terperinci Bermula dengan PHP: Symfony Framework. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!