เพื่อหลีกเลี่ยงปัญหาการบำรุงรักษาที่เกิดจากการผสมโปรแกรม ASP และรหัส HTML บทความนี้แนะนำวิธีการใช้เทมเพลตเพื่อแยกโปรแกรมและหน้าเพื่อทำให้การเขียนโปรแกรมง่ายขึ้น
เมื่อใช้ ASP เพื่อสร้างเว็บไซต์มักจะมีสถานการณ์ที่รหัสโปรแกรมและรหัส HTML ถูกผสมในไฟล์ ASP มีข้อเสียมากมายในการทำเช่นนี้:
1. ไม่ต้องพูดถึงว่าเมื่อการเขียนโปรแกรมคุณต้องออกแบบและจัดเรียงเค้าโครงหน้าซึ่งจะทำให้รหัสสับสนและยากที่จะเข้าใจและผิดปกติ
2. เมื่อคุณต้องการเปลี่ยนลักษณะที่ปรากฏของหน้าคุณไม่เพียง แต่ต้องเปลี่ยนส่วน HTML แต่ยังต้องเปลี่ยนรหัส ASP ซึ่งไม่ง่ายต่อการบำรุงรักษา
ดังนั้นเราจะหลีกเลี่ยงปัญหาเหล่านี้ได้อย่างไร
คำตอบคือการใช้ไฟล์เทมเพลตเพื่อแยกรหัส ASP และหน้า HTML และปัญหาทั้งหมดจะได้รับการแก้ไข การใช้เทมเพลตมีประโยชน์ดังต่อไปนี้:
1. การปรากฏตัวของไซต์ทั้งหมดสามารถแทนที่ได้ในเวลาอันสั้น
2. เปิดใช้งานโปรแกรมเมอร์ในการเขียนโปรแกรมนามธรรมโดยไม่ต้องแตะรหัส HTML
3. เทมเพลตก่อนหน้านี้สามารถนำกลับมาใช้ใหม่ได้
โปรแกรมที่ใช้ PHP จะรู้ว่า PHP มีโปรแกรมเทมเพลต (FastTemplate) ปัญหาปัจจุบันคือวิธีการใช้ฟังก์ชั่นที่คล้ายกันใน ASP
ASP ของ Microsoft มาพร้อมกับสองสคริปต์: VBScript และ JScript พวกเขาทั้งหมดมาพร้อมกับ "วัตถุนิพจน์ทั่วไป" (regexp) ซึ่งสามารถใช้ฟังก์ชั่นเทมเพลตได้อย่างง่ายดายโดยใช้วัตถุสตริงและวัตถุ regexp Mu Feng ใช้สิ่งนี้เพื่อเขียนไฟล์ "template.jscript.inc" และเนื้อหาของไฟล์นี้ถูกแนบไปกับส่วนท้ายของบทความ ผู้อ่านที่มีความสามารถสามารถปรับปรุงตามความต้องการของพวกเขา
นี่คือคำอธิบายของวิธีการใช้งาน เนื่องจากไฟล์นี้เขียนใน JScript (แน่นอนว่ามันง่ายที่จะแปลงเป็น VBScript) ภาษาสคริปต์เริ่มต้นควรตั้งค่าเป็น JScript นั่นคือบรรทัดแรกของโปรแกรม ASP ควรเป็น: <%@language = JScript%> และไฟล์โปรแกรมแม่แบบควรรวม: <!
ก่อนอื่นให้แนะนำการใช้คลาสเทมเพลต:
1. สร้างวัตถุเทมเพลต: เทมเพลต (พา ธ )
พารามิเตอร์: พา ธ (ประเภทสตริง) พา ธ การจัดเก็บไฟล์เทมเพลต HTML
ใช้ตัวดำเนินการใหม่เพื่อสร้างวัตถุเทมเพลต
ตัวอย่าง:
vartpl = newTemplate ("c: // แม่แบบ");
ในโปรแกรมคุณสามารถใช้ tpl.tplpath เพื่อรับเส้นทางเทมเพลตหรือคุณสามารถใช้ tpl.tplpath เพื่อเปลี่ยนเส้นทางเทมเพลต
ชอบ:
tpl.tplpath = "d: // แม่แบบ";
2. โหลดไฟล์เทมเพลต: template.load (ชื่อ, ไฟล์)
พารามิเตอร์: ชื่อ (ประเภทสตริง) เป็นชื่อตัวแปรเทมเพลต