⊗ppMVUFmRP 8 of 35 menu

พารามิเตอร์ในเส้นทางใน MVC ใน PHP

ในบทเรียนที่แล้ว เส้นทางของเรามีที่อยู่ ตายตัว ในความเป็นจริงกลไกการกำหนดเส้นทางนั้น ซับซ้อนกว่านี้ - สามารถทำได้ให้ส่วนหนึ่งของ URI ของหน้าตกไปอยู่ในพารามิเตอร์ที่มีชื่อ, ซึ่งสามารถเข้าถึงได้ในคอนโทรลเลอร์ต่อไป

สมมติว่า ที่อยู่ของเราจะมีลักษณะ แบบนี้: /test/param1/param2/, โดยที่ param1 และ param2 เป็นสตริง ใดๆ ในขณะเดียวกันเราต้องการให้ที่อยู่รูปแบบนี้ ถูกประมวลผลโดยหนึ่งการกระทำของคอนโทรลเลอร์ สำหรับสิ่งนี้ควรคิดชื่อพารามิเตอร์ขึ้นมา และวางเครื่องหมายโคลอนข้างหน้า แบบนี้:

<?php use \Core\Route; return [ new Route('/test/:var1/:var2/', 'page', 'act'), ]; ?>

ในกรณีของเราจะได้ผลลัพธ์ว่า คำขอทั้งหมด รูปแบบ /test/พารามิเตอร์1/พารามิเตอร์2/ จะตกไปยังการกระทำ act ในขณะ เดียวกันในพารามิเตอร์แรกของการกระทำนี้จะ ตกไปเป็นอาเรย์เชื่อมโยงกับพารามิเตอร์: ข้อความ ที่จะอยู่แทนที่พารามิเตอร์แรก, จะตกไปในองค์ประกอบอาเรย์ที่มีคีย์ 'var1', และข้อความของพารามิเตอร์ที่สอง - ไปที่ 'var2'

สมมติว่า ในแถบที่อยู่พิมพ์ ดังต่อไปนี้: /test/eee/bbb/ มาดูกัน ว่าพารามิเตอร์แรกของการกระทำ จะมีอะไรบ้าง:

<?php namespace Project\Controllers; use Core\Controller; class PageController extends Controller { public function act($params) { var_dump($params); // ['var1' => 'eee', 'var2' => 'bbb'] } } ?>

สร้างคอนโทรลเลอร์ NumController, และในนั้น - การกระทำ sum ให้การกระทำนี้ ประมวลผลที่อยู่ในรูปแบบต่อไปนี้: /nums/:n1/:n2/:n3/, โดยที่พารามิเตอร์ จะเป็นตัวเลขบางจำนวน จัดการให้ บนหน้าจอแสดงผลรวมของตัวเลขที่ส่งมา

ไทย
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣTürkmenTürkçeЎзбекOʻzbekTiếng Việt
เราใช้คุกกี้สำหรับการทำงานของเว็บไซต์ การวิเคราะห์ และการปรับเนื้อหาให้เหมาะสมส่วนบุคคล การประมวลผลข้อมูลเกิดขึ้นตาม นโยบายความเป็นส่วนตัว.
ยอมรับทั้งหมด ปรับแต่ง ปฏิเสธ