การส่งข้อมูลไปยัง View ใน MVC ใน PHP
ด้วยพารามิเตอร์ที่สองของเมธอด render
เราสามารถส่งข้อมูลจากคอนโทรลเลอร์ไปยัง
วิวได้ ควรส่งข้อมูล
ในรูปแบบของอาร์เรย์เชิงสมาชิก (associative array) โดยที่ใน
วิว คีย์ของอาร์เรย์นี้จะกลายเป็น
ตัวแปรที่มีค่าที่เกี่ยวข้อง
ลองมาดูในทางปฏิบัติกัน เราาจะส่ง อาร์เรย์ที่มีสามองค์ประกอบไปยัง วิวของเรา:
<?php
namespace Project\Controllers;
use Core\Controller;
class PageController extends Controller
{
public function act()
{
return $this->render('page/act', [
'var1' => 'eee',
'var2' => 'bbb',
'var3' => 'kkk',
]);
}
}
?>
อย่างที่คุณเห็น คีย์ของอาร์เรย์ของเราคือ 'var1',
'var2' และ 'var3' นั่นหมายความว่า
ในวิวจะสามารถเข้าถึงตัวแปรดังกล่าวได้
และเราสามารถแสดงค่าของมัน
ในตำแหน่งที่ต้องการของโค้ด HTML ได้ ลองทำดู:
<div>
นี่คือวิว
ของแอ็กชัน act ของคอนโทรลเลอร์ test
</div>
<ul>
<li><?php echo $var1; ?></li>
<li><?php echo $var2; ?></li>
<li><?php echo $var3; ?></li>
</ul>
ให้คุณลองทำตามขั้นตอนที่อธิบายไว้ จากนั้น ลองเรียกแอ็กชันของเราผ่านแถบที่อยู่ ของเบราว์เซอร์ ตรวจสอบให้แน่ใจว่าในเบราว์เซอร์จะปรากฏ ข้อความจากวิวที่คุณสร้างขึ้น