คุณสมบัติสามารถตั้งค่าแคชส่วนตัวหรือแคชสาธารณะเพื่อปรับปรุงประสิทธิภาพ คุณสามารถเลือกใช้องค์ประกอบ Stream หรือองค์ประกอบ FSO ได้อย่าง
อิสระ
ชื่อ
ข้อความ ชื่อเทมเพลต ส่วนใหญ่จะใช้เพื่อแยกแยะเทมเพลตที่แตกต่างกันเมื่อใช้แคชสาธารณะ
รูปแบบ
ข้อความ, ประเภทการเข้ารหัสไฟล์, ค่าที่ตั้งค่าได้
วัตถุ
ข้อความที่ใช้ส่วนประกอบสามารถตั้งค่าได้:
ลำธาร
สสส
แคชสาธารณะ
ค่าบูลีน ให้ใช้แคชสาธารณะ เมื่อเปิดใช้งาน ไฟล์เทมเพลตจะถูกบันทึกลงในออบเจ็กต์แอปพลิเคชัน วัตถุอื่นๆ ที่อ้างอิงถึงคลาสเทมเพลตนี้สามารถอ่านได้จากแคชโดยตั้งค่าชื่อเดียวกันและเปิดแคชสาธารณะด้วย (วิธีการโหลด)
แคชส่วนตัว
ค่าบูลีน ให้ใช้แคชส่วนตัว เมื่อเปิดใช้งาน ไฟล์เทมเพลตจะถูกบันทึกลงในตัวแปรภายในของออบเจ็กต์ และออบเจ็กต์เดียวกันที่อ้างอิงถึงคลาสเทมเพลตนี้สามารถอ่านได้ (วิธีการโหลด)
ทิศทาง
ข้อความ ไดเร็กทอรีที่มีไฟล์เทมเพลตอยู่ ไม่มีเครื่องหมายทับหรือแบ็กสแลชก่อนและหลัง เช่น: template/default
ไฟล์
ข้อความ ชื่อไฟล์เทมเพลต ไม่มีเครื่องหมายทับหรือแบ็กสแลชด้านหน้า เช่น default.html
บันทึกทิศทาง
ข้อความ ไดเร็กทอรีที่บันทึกไฟล์ โดยไม่มีเครื่องหมายทับหรือแบ็กสแลชก่อนและหลัง เช่น: html/default
บันทึกไฟล์
ข้อความ บันทึกชื่อไฟล์ ไม่มีเครื่องหมายทับหรือแบ็กสแลชนำหน้า เช่น default.html
วัตถุ
รหัส
ข้อความ ข้อความปัจจุบัน วัตถุนี้จะถูกแทนที่เมื่อใช้วิธี SetVar และเทมเพลตถูกโอเวอร์โหลดไปยังวัตถุนี้เมื่อใช้วิธีการโหลด
พื้นที่จัดเก็บ
ข้อความ ข้อความที่บันทึกไว้ เมื่อใช้เมธอด SaveFront หรือ SaveLast ข้อความในออบเจ็กต์โค้ดจะถูกบันทึกไว้ที่จุดเริ่มต้นหรือจุดสิ้นสุดของออบเจ็กต์นี้ ซึ่งสามารถใช้เพื่อรับโค้ดทั้งหมดหลังจากการวนซ้ำ
วิธี
ล้างแคช
ล้างแคชสาธารณะและส่วนตัว (บังคับให้โหลดเทมเพลตซ้ำจากไฟล์)
ล้างแคชสาธารณะ
ล้างแคชสาธารณะ
ล้างแคชส่วนตัว
ล้างแคชส่วนตัว
เคลียร์โค้ด
ล้างวัตถุรหัส
ล้างการจัดเก็บ
ล้างวัตถุที่เก็บข้อมูล
บันทึกหน้า
บันทึกข้อความในออบเจ็กต์รหัสปัจจุบันไปที่จุดเริ่มต้นของออบเจ็กต์ Storage
บันทึกล่าสุด
บันทึกข้อความในออบเจ็กต์รหัสปัจจุบันที่ส่วนท้ายของออบเจ็กต์ Storage
บันทึกรหัส
บันทึกข้อความในวัตถุรหัสปัจจุบันลงในไฟล์
บันทึกการจัดเก็บข้อมูล
บันทึกข้อความในวัตถุการจัดเก็บข้อมูลปัจจุบันลงในไฟล์
เซตวาร์
พารามิเตอร์สำหรับการแทนที่ข้อความในออบเจ็กต์โค้ดปัจจุบัน: ข้อความที่จะแทนที่, ข้อความที่จะแทนที่
โหลด
โหลดไฟล์เทมเพลตลงในออบเจ็กต์รหัส เมื่อเปิดใช้งานแคชส่วนตัวแล้ว ไฟล์นั้นจะถูกโหลดจากแคชส่วนตัว เมื่อเปิดใช้งานและมีแคชสาธารณะอยู่ หากไม่มีแคชสาธารณะ มันถูกโหลดจากไฟล์
ตัวแปรภายใน
ccStrPath
ไดเรกทอรีรากเริ่มต้น
ccStrCookieName
คำนำหน้าชื่อออบเจ็กต์แอปพลิเคชันเริ่มต้น
รหัส
คลาส ccClsTemplate
ส่วนตัว ccStrCode, ccStrStorage
PrivateccStrCacheCode
ccBlnPublicCache ส่วนตัว, ccBlnPrivateCache
ccStrName ส่วนตัว, ccStrCookieName
ccStrDirection ส่วนตัว, ccStrSaveDirection, ccStrFile, ccStrSaveFile, ccStrPath
ccObjStream ส่วนตัว, ccObjFSO, ccStrFormat, ccIntObject, ccObjText, ccIntFormat
ส่วนตัวย่อย Class_Initialize
ccStrName = "ค่าเริ่มต้น" 'ชื่อเริ่มต้น
ccBlnPublicCache = เท็จ
ccBlnPrivateCache = เท็จ
ccStrFile = "cache.html"
ccStrSaveFile = "save_cache.html"
ccStrCookieName = "ccClass_Template" 'คำนำหน้าชื่อออบเจ็กต์แอปพลิเคชัน
ccStrFormat = "UTF-8" 'UTF-8|ASCII|GB2312|BIG5
ccIntFormat = -1
ccIntObject = 1 'ค่าเริ่มต้นอ่าน/บันทึกองค์ประกอบเทมเพลต 1:ADODB.Stream 2:FSO
ccStrPath = Server.MapPath("./")&"" 'เส้นทางรูทเริ่มต้น
สิ้นสุด
ชื่อทรัพย์สินสาธารณะย่อย (ccStrName_in)
ccStrName = LCase(ตัดแต่ง(ccStrName_in))
End Property
ทรัพย์สินสาธารณะ Let Format (ccStrFormat_in)
ccStrFormat = ccStrFormat_in
ถ้า InStr(LCase(Trim(ccStrFormat_in)),"utf") > 0 แล้ว
ccIntFormat = -1
อื่น
ccIntFormat = 0
สิ้นสุดถ้า
คุณสมบัติสุดท้าย
ทรัพย์สินสาธารณะให้วัตถุ (ccStrObject_in)
ccStrObject_in = LCase(ตัดแต่ง(ccStrObject_in))
ถ้า InStr(ccStrObject_in,"fso") > 0 แล้ว
ccIntObject = 2
อื่น
ccIntObject = 1
สิ้นสุดถ้า
คุณสมบัติสุดท้าย
ทรัพย์สินสาธารณะให้ PublicCache (ccBlnPublicCache_in)
ถ้า ccBlnPublicCache_in = True แล้ว
ccBlnPublicCache = จริง
อื่น
ccBlnPublicCache = เท็จ
สิ้นสุดถ้า
คุณสมบัติสุดท้ายทรัพย์สิน
สาธารณะให้ PrivateCache (ccBlnPrivateCache_in)
ถ้า ccBlnPrivateCache_in = True แล้ว
ccBlnPrivateCache = จริง
อื่น
ccBlnPrivateCache = เท็จ
สิ้นสุดถ้า
ทิศทางการเช่า
ทรัพย์สิน
สาธารณะ (ccStrDirection_in)
ccStrDirection = ccStrDirection_in
สิ้นสุดทรัพย์สิน
ทรัพย์สินสาธารณะให้ไฟล์ (ccStrFile_in)
ถ้า ccStrFile_in <> "" จากนั้น
ccStrFile = ccStrFile_in
สิ้นสุดถ้า
คุณสมบัติสุดท้าย
อสังหาริมทรัพย์สาธารณะ ให้ SaveDirection(ccStrSaveDirection_in)
ccStrSaveDirection = ccStrSaveDirection_in
คุณสมบัติสุดท้าย
ทรัพย์สินสาธารณะให้ SaveFile (ccStrSaveFile_in)
ถ้า ccStrSaveFile_in <> "" จากนั้น
ccStrSaveFile = ccStrSaveFile_in
สิ้นสุดถ้า
End Property
ทรัพย์สินสาธารณะ รับรหัส
รหัส = ccStrCode
ทรัพย์สินปลายทาง
ทรัพย์สินสาธารณะ รับพื้นที่จัดเก็บ
พื้นที่เก็บข้อมูล=ccStrStorage
สิ้นสุดคุณสมบัติ
สาธารณะ ClearCache ย่อย
โทร ClearPrivateCache
โทร ClearPublicCache
สิ้นสุด
ย่อยสาธารณะย่อย ClearPrivateCache
ccStrCacheCode = ""
สิ้นสุด
ย่อยสาธารณะย่อย ClearPublicCache
แอปพลิเคชัน (ccStrCookieName&ccStrName) = ""
สิ้นสุด
ClearStorage ย่อยสาธารณะย่อย
ccStrStorage = ""
สิ้นสุด
ClearCode ย่อยสาธารณะ
ย่อย
ccStrCode = ""
สิ้นสุดย่อย
สาธารณะย่อย SaveFront
ccStrStorage = ccStrCode & ccStrStorage
สิ้นสุด
ย่อย ย่อยสาธารณะ SaveLast
ccStrStorage = ccStrStorage & ccStrCode
สิ้นสุด Sub
Public Sub SaveCode
โทร SaveToFile(1)
สิ้นสุด Sub
Public Sub SaveStorage
โทร SaveToFile(2)
สิ้นสุด
SetVar ย่อยสาธารณะย่อย (ccStrTag_in, ccStrValue_in)
ccStrCode = แทนที่(ccStrCode,ccStrTag_in,ccStrValue_in)
สิ้นสุด
ย่อยส่วนตัวย่อย SaveToFile (ccIntCode_in)
หรี่ ccStrSaveCode
ถ้า ccIntCode_in = 1 แล้ว
ccStrSaveCode = ccStrCode
อื่น
ccStrSaveCode = ccStrStorage
สิ้นสุดถ้า
ถ้า ccIntObject = 1 แล้ว
ตั้งค่า ccObjStream = Server.CreateObject("ADODB.Stream")
ด้วย ccObjStream
.ประเภท = 2
.โหมด = 3
.เปิด
.Charset = ccStrFormat
.Position = ccObjStream.Size
.WriteText ccStrSaveCode
.SaveToFile ccStrPath & ccStrSaveDirection & "" & ccStrSaveFile,2
.ปิด
จบด้วย
ตั้งค่า ccObjStream = ไม่มีเลย
อื่น
ตั้งค่า ccObjFSO = CreateObject("Scripting.FileSystemObject")
ถ้า ccObjFSO.FileExists(ccStrPath & ccStrSaveDirection & "" & ccStrSaveFile) = True แล้ว
ccObjFSO.DeleteFile (ccStrPath & ccStrSaveDirection & "" & ccStrSaveFile)
สิ้นสุดถ้า
ตั้งค่า ccObjText = ccObjFSO.OpenTextFile(ccStrPath & ccStrSaveDirection & "" & ccStrSaveFile,2,True,ccIntFormat)
ccObjText เขียน ccStrSaveCode
ตั้งค่า ccObjText = ไม่มีเลย
ตั้งค่า ccObjFSO = ไม่มีเลย
สิ้นสุดถ้า
ccStrSaveCode = ""
สิ้นสุด
การโหลดย่อยสาธารณะย่อย
ccStrCode = ""
ถ้า ccBlnPrivateCache = True แล้ว
ถ้า ccFncIsEmpty(ccStrCacheCode) = False แล้ว
ccStrCode = ccStrCacheCode
ออกจากย่อย
สิ้นสุดถ้า
สิ้นสุดถ้า
ถ้า ccBlnPublicCache = True แล้ว
ถ้า ccFncIsEmpty(Application(ccStrCookieName&ccStrName)) = False แล้ว
ccStrCode = แอปพลิเคชัน (ccStrCookieName&ccStrName)
ออกจากย่อย
สิ้นสุดถ้า
สิ้นสุดถ้า
ถ้า ccIntObject = 1 แล้ว
ตั้งค่า ccObjStream = Server.CreateObject("ADODB.Stream")
ด้วย ccObjStream
.ประเภท = 2
.โหมด = 3
.เปิด
.Charset = ccStrFormat
.Position = ccObjStream.Size
.LoadFromFile ccStrPath & ccStrDirection & "" & ccStrFile
ccStrCode = .อ่านข้อความ
.ปิด
จบด้วย
ตั้งค่า ccObjStream = ไม่มีเลย
อื่น
ตั้งค่า ccObjFSO = CreateObject("Scripting.FileSystemObject")
ถ้า ccObjFSO.FileExists(ccStrPath & ccStrDirection & "" & ccStrFile) = True แล้ว
ตั้งค่า ccObjText = ccObjFSO.OpenTextFile (ccStrPath & ccStrDirection & "" & ccStrFile,1,False,ccIntFormat)
ccStrCode = ccObjText.ReadAll
ตั้งค่า ccObjText = ไม่มีเลย
สิ้นสุดถ้า
ตั้งค่า ccObjFSO = ไม่มีเลย
สิ้นสุดถ้า
ถ้า ccBlnPrivateCache = True แล้ว
ccStrCacheCode = ccStrCode
สิ้นสุดถ้า
ถ้า ccBlnPublicCache = True แล้ว
แอปพลิเคชัน (ccStrCookieName&ccStrName) = ccStrCode
สิ้นสุดถ้า
สิ้นสุด
สิ้นสุดคลาส
ccFncIsEmpty (ByRef ccStrValue_in)
ถ้า IsNull(ccStrValue_in) หรือ IsEmpty(ccStrValue_in) หรือ ccStrValue_in = "" จากนั้น
ccFncIsEmpty = จริง
อื่น
ccFncIsEmpty = เท็จ
สิ้นสุดถ้า
ฟังก์ชันสิ้นสุด
ตัวอย่าง
เนื้อหาไฟล์เทมเพลต
<#test#>
รหัสโปรแกรม ASP
ติ่ม objTemplate
ตั้งค่า objTemplate = ccClsTemplate ใหม่
objTemplate.Name = "ทดสอบ"
objTemplate.Format = "UTF-8"
'เปิดใช้งานการแคช
objTemplate.PublicCache = จริง
objTemplate.PrivateCache = จริง
'ตั้งค่าไดเร็กทอรีเทมเพลตและชื่อไฟล์'
objTemplate.Direction = "ทดสอบ"
objTemplate.File = "test.html"
'ตั้งค่าไดเร็กทอรีไฟล์บันทึกและชื่อไฟล์'
objTemplate.SaveDirection = "ทดสอบ"
objTemplate.SaveFile = "test3.html"
'โหลดเทมเพลต
โทร objTemplate.Load
'ทำการแทนที่ข้อความ
โทร objTemplate.SetVar("<#test#>","Hello world.")
'บันทึกข้อความลงที่เก็บข้อมูล
โทร objTemplate.SaveLast
'โหลดเทมเพลตใหม่ ซึ่งจะถูกโหลดซ้ำจากแคชส่วนตัวเพื่อปรับปรุงประสิทธิภาพ
โทร objTemplate.Load
'แทนที่ด้วยค่าอื่น
โทร objTemplate.SetVar("<#test#>"," By Cloudream")
'บันทึกที่ส่วนท้ายของ Storage เพื่อจัดเก็บชั่วคราว
โทร objTemplate.SaveLast
'บันทึกรหัสลงไฟล์
โทร objTemplate.SaveCode
Response.Write objTemplate.Storage
Set objTemplate = ไม่มีเลย
แสดงผล
สวัสดีชาวโลก โดย Cloudream
บันทึกไฟล์ผลลัพธ์
โดย คลาวด์ดรีม.