در الگوی طراحی mvc نقش controller ها همانطور که از اسمش پیداست کنترل کردن وب اپلیکیشن ما توسط فریمورکی هست که با الگوی mvc نوشته میشود. در اینجا ما درون فریمورک php mvc خود باید برای تمام درخواست های کاربران از طریق url یک عدد کنترلر متناسب با آن درخواست داشته باشیم.
اگر بخواهیم url ها و درخواست های مبنی بر mvc باشد باید قانون ما به این شکل تعریف شود که بعد از نام دامنه ی سایت ، نام کنترلر و بعد از آن نام متد قرار بگیرد و بعد از آن تمام قسمت ها در url بعنوان پارامترهایی برای آن متود در نظر گرفته شود.برای مثال url زیر را در نظر بگیرید :
گاهی بعنوان یک برنامه نویس Php ممکن است. انتخاب یک فریمورک آماده برای شما سخت باشد ، شاید بخاطر دلایلی مثل زمان یا نداشتن نیاز به یادگیری چیز جدیدی باشد. همچنین برای پروژه های کوچک یا پروژه هایی با هدف صرفا آموزش ، میتوانید یک فریمورک Php شخصی برای خودتان بسازید.
فریمورک ها در توسعه ی وب چنین ابزاری هستند که به برنامه نویسان وب کمک میکنند تا با سرعت بیشتری وب سایت خود را اجرا کنند و به بروزرسانی و توسعه ی آن بپردازند که امروزه برای هر توسعه ی دهنده ی وب لازم است. با یک فریمورکی کار کند تا بتواند وب سایت های خود را توسعه دهد.
حالا اولین عنصر همان نام controller ما هست و ما دو حالت در اینجا داریم مقدار $url یک / هست در این صورت ما در صفحه ی اصلی سایت هستیم و در غیر این صورت یک آرایه داریم که عضو اول آن نام کنترلر و بعدی نام اکشن یا متود درون این کنترلر هست و پارت های بعدی در url همگی پارامتر های ورودی برای این متود هستند.