پاسخ به موضوع

5 ماه پیش عاطفه این پرسش را مطرح کرد 4 نفر پاسخ داده اند

فایل Core در MVC

سلام روزتون بخیر بنده در حال گذراندن فصل سوم از دوره متخصص MVC هستم دوتا سوال خیلی ذهنمو درگیر کرده گفتم اگه امکانش هست راهنمایی کنید بندرو

طبق فایل Core که هسته فریمورک ما هستش وقتی Controller ای که در url وارد میکنیم وجود داشته باشه اون require_once ، Controller میشه و از کلاسش یک نمونه ایجاد میشه چیزی که بندرو گیج کرده این هستش که وقتی پارامتر دوم url ینی متد فرستاده میشه به فایل Core اگر وجود داشته باشه ، فقط this_method$ برابر با [1]url$ قرار می گیره و unset میشه ولی مگه برای اجرای یک متد نیاز نیست که اون رو صدا بزنیم یا فراخوانی کنیم؟ ما اینجا اصلا نگفتیم که وقتی شرط درست بود ینی متد وجود داشت متد اجرا بشه پس چجوری متد خود به خود اجرا میشه؟

و سوال دوم اینکه وقتی کنترلر و متد رو از params$ جدا کردیم و ریختیم درون همون params$ چجوری این params$ برابر با id$ که پارامتر متد درون کنترلر ما هستش قرار می گیره؟ یا به عبارتی چجوری params$ به id$ فرستاده میشه؟ این دو مورد واقعا منو گیج کرده

ابوالفضل احمدی

abolfazlahmadi@

اگه توجه کنید تابع call_user_func_array تو پارامتر دومش نام متد رو دزیافت کرده و قاعدتا در حال دسترسی و اجرای متد مورد نظر

اگه توجه کنید تابع call_user_func_array تو پارامتر دومش نام متد رو دزیافت کرده و قاعدتا در حال دسترسی و اجرای متد مورد نظر

عاطفه

AtefehRastgoo@

@abolfazlahmadi استاد درواقع طبق چیزی که تو آرایه ای که در متد call_user_func_array هست نوشتیم، کنترلر و متد ما اجرا میشه و باقی مواردی که در url وارد کردیم به عنوان پارامتر به متد ما که همون $method<-this هستش پاس داده میشه درسته؟

@AtefehRastgoo بله کاملا درسته بصورت داینامیک پاس داده میشه

عاطفه

AtefehRastgoo@

@abolfazlahmadi ممنون استاد بابت راهنماییتون تشکر