မိမိ၏ MVC Framework အတွက် renderView နည်းလမ်း
<renderView> နည်းလမ်းသည် view file ကို လက်ခံရယူပြီး ၎င်းအတွင်းသို့ ကိန်းရှင်များ၏ တန်ဖိုးများကို အစားထိုးပေးပါမည်။ ဤသို့ပြုလုပ်ရန် နည်းလမ်းတစ်ခုရှိပါသည်။ သင်သိထားသည့်အတိုင်း view file တွင် အသုံးပြုသော ကိန်းရှင်များသည် <Page> class ၏ object ၏ data property အတွင်း၌ ပါဝင်နေပါသည်။
ထိုကိန်းရှင်များသည် associative array တစ်ခုဖြစ်ပါသည်။ ဤ array ကို အမှန်တကယ်သော ကိန်းရှင်များအဖြစ်သို့ ပြောင်းလဲပေးရန် လိုအပ်ပြီး ၎င်းနောက် <include> ဖြင့် view file ကို ချိတ်ဆက်ရန်လိုအပ်ပါသည်။ ဤနည်းဖြင့် ယင်းဖိုင်အတွင်း ရရှိနိုင်သော ကိန်းရှင်များသည် ၎င်းတို့၏တန်ဖိုးများကို ရရှိပြီး ရလဒ်အဖြစ် ကိန်းရှင်များ၏တန်ဖိုးများ အစားထိုးပြီးသော HTML code ကိုသာ ရရှိမည်ဖြစ်သည်။
Array ကို ကိန်းရှင်များအဖြစ်သို့ ပြောင်းလဲရန် <extract> အထူး function ကို အသုံးပြုပါမည်။
<?php
private function renderView(Page $page) {
$viewPath = $_SERVER['DOCUMENT_ROOT'] . "/project/views/{$page->view}.php";
if (file_exists($viewPath)) {
ob_start();
$data = $page->data;
extract($data); // array မှ ကိန်းရှင်များသို့
include $viewPath; // view file ကို ချိတ်ဆက်ပါ
return ob_get_clean();
}
}
?>