კონტროლერები MVC-ში PHP-ში
პირველი, რასაც გავეცნობით - ეს არის კონტროლერები. კონტროლერები ამუშავებენ მომხმარებლის მოთხოვნებს, ესმით, რა სურდა მომხმარებელს საიტისგან, ითხოვენ შესაბამის მონაცემებს მოდელიდან და აგზავნის მათ წარმოდგენაში.
კონტროლერები წარმოადგენენ OOP კლასებს.
ერთი ფაილი - ეს არის ერთი კლასი და, შესაბამისად,
ერთი კონტროლერი. ჩვენს ფრეიმვორქში კონტროლერები
შეინახება ფოლდერში project/controllers.
მოდით ვივარჯიშოთ კონტროლერების შექმნაში.
გასახურებისთვის შევქმნათ კლასი PageController,
რომელიც მართავს ტექსტურ გვერდებს
ჩვენს საიტზე.
მოდით დაუყოვნებლივ შევქმნათ ფაილი ჩვენი კონტროლერისთვის.
ჩვენი ფრეიმვორქის წესების მიხედვით ყოველი კლასი
შეინახება ფაილში იმავე სახელწოდებით
(რეგისტრის ჩათვლით). ანუ ჩვენი კლასი PageController
შეინახება ფაილში PageController.php.
შექმენით ეს ფაილი ფოლდერში project/controllers.
მოდით ამ ფაილში შევქმნათ ჩვენი კლასი:
<?php
namespace Project\Controllers;
use \Core\Controller;
class PageController extends Controller
{
}
?>
როგორც ხედავთ, ჩვენი კლასი ეკუთვნის სახელთა სივრცეს
Project\Controllers, შემდეგნაირად შეთანხმებას
ფაილების ავტომატური ჩატვირთვის შესახებ (ანუ გზა ფოლდერებში
უნდა ემთხვეოდეს სახელთა სივრცეს).
გარდა ამისა, ჩვენი კლასი მემკვიდრეობით მიიღება კლასისგან
Core\Controller, რომელიც მდებარეობს ბირთვში
ფრეიმვორქის. ამაში არ არის საჭირო ღრმა აზრის ძიება,
არამედ უბრალოდ უნდა მივიღოთ, როგორც წესი
ფრეიმვორქის. აი ეს წესი: ყველა თქვენ მიერ შექმნილი
კონტროლერი უნდა მემკვიდრეობით მიიღოს
კლასისგან Core\Controller, რომ ყველაფერი
იმუშავებს, როგორც საჭიროა.