Функции могут устанавливать частный или общедоступный кеш для повышения эффективности. Вы можете свободно использовать компонент Stream или компонент FSO. Поддержка пользовательской кодировки файлов и сохранение
атрибутов файлов.
Имя
Текст, имя шаблона, в основном используется для различения разных шаблонов при использовании общедоступного кэша.
Формат
Текст, тип кодировки файла, настраиваемое значение.
Объект
Текст, используя компоненты, может задавать значения:
Транслировать
ФСО
Публиккеш
Логическое значение, используйте общедоступный кэш. Если этот параметр включен, файл шаблона будет сохранен в объекте приложения. Другие объекты, ссылающиеся на этот класс шаблона, могут читать из кэша, установив то же значение имени, а также открыв общедоступный кэш. (Метод загрузки)
ПриватКэш
Логическое значение, использовать частный кеш. При включении файл шаблона будет сохранен во внутренней переменной объекта, и тот же объект, который ссылается на этот класс шаблона, сможет его прочитать. (Метод загрузки)
Направление
Текст, каталог, в котором находится файл шаблона, без косых черт или обратных косых черт до и после, например: шаблон/по умолчанию.
Файл
Текст, имя файла шаблона, без косой или обратной косой черты спереди, например: default.html.
Сохранить направление
Текст, каталог, в котором сохранен файл, без косых черт или обратных косых черт до и после, например: html/default
СохранитьФайл
Текст, имя файла сохранения, без косой или обратной косой черты спереди, например: default.html.
объект
Код
Текст, текущий текст, этот объект заменяется при использовании метода SetVar, а шаблон перегружается на этот объект при использовании метода Load.
Хранилище
Текст, сохраненный текст. При использовании метода SaveFront или SaveLast текст в объекте Code сохраняется в начале или конце этого объекта. Его можно использовать для получения всех кодов после цикла.
метод
Очистить кэш
Очистить общедоступный и частный кэш (принудительная перезагрузка шаблона из файла)
ОчиститьPublicCache
Очистить общедоступный кеш
ОчиститьПриватКэш
Очистить личный кеш
ОчиститьКод
Очистить объект кода
Очистить хранилище
Очистить объект хранилища
СохранитьФронт
Сохраните текст текущего объекта «Код» в начало объекта «Хранилище».
СохранитьПоследнее
Сохраните текст текущего объекта «Код» в конец объекта «Хранилище».
СохранитьКод
Сохраните текст текущего объекта кода в файл.
СохранитьХранилище
Сохраните текст текущего объекта Storage в файл.
SetVar
Параметры замены текста в текущем объекте «Код»: заменяемый текст, заменяемый текст
Нагрузка
Загрузите файл шаблона в объект кода. Если частный кэш включен и существует, он загружается из частного кэша. Если он включен и существует общедоступный кэш, он загружается из общедоступного кэша. он загружается из файла.
внутренние переменные
ccStrPath
Корневой каталог по умолчанию
ccStrCookieName
Префикс имени объекта приложения по умолчанию
код
Класс ccClsTemplate
Private ccStrCode,ccStrStorage
PrivateccStrCacheCode
Частный ccBlnPublicCache,ccBlnPrivateCache
Частное имя ccStrName, ccStrCookieName
Частный ccStrDirection, ccStrSaveDirection, ccStrFile, ccStrSaveFile, ccStrPath
Частный ccObjStream,ccObjFSO,ccStrFormat,ccIntObject,ccObjText,ccIntFormat
Частный подкласс_Initialize
ccStrName = "default" 'Имя по умолчанию
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("./")&"" 'Корневой путь по умолчанию
Конец
общедоступного свойства Let Name(ccStrName_in)
ccStrName = LCase(Trim(ccStrName_in))
конечного свойства
Let Format(ccStrFormat_in)
ccStrFormat = ccStrFormat_in
Если InStr(LCase(Trim(ccStrFormat_in)),"utf") > 0 Тогда
ccIntFormat = -1
Еще
ccIntFormat = 0
Конец, если
End Property
Let Object(ccStrObject_in)
ccStrObject_in = LCase(Trim(ccStrObject_in))
Если InStr(ccStrObject_in,"fso") > 0 Тогда
ccIntObject = 2
Еще
ccIntObject = 1
Конец, если
End Property
Let PublicCache(ccBlnPublicCache_in)
Если ccBlnPublicCache_in = True Тогда
ccBlnPublicCache = Истина
Еще
ccBlnPublicCache = Ложь
Конец, если
конечного свойства
Let PrivateCache(ccBlnPrivateCache_in)
Если ccBlnPrivateCache_in = True Тогда
ccBlnPrivateCache = Истина
Еще
ccBlnPrivateCache = Ложь
Конец, если
Открытое
свойство конечного свойства Let Direction(ccStrDirection_in)
ccStrDirection = ccStrDirection_in
конечного свойства
Let File(ccStrFile_in)
Если ccStrFile_in <> "" Тогда
ccStrFile = ccStrFile_in
Конец, если
End Property
Let SaveDirection(ccStrSaveDirection_in)
ccStrSaveDirection = ccStrSaveDirection_in
End Property
Let SaveFile(ccStrSaveFile_in)
Если ccStrSaveFile_in <> "" Тогда
ccStrSaveFile = ccStrSaveFile_in
Конец, если
Конечная собственность.
Публичная собственность. Получить код
Код = ccStrCode
Конечная собственность
Публичная собственность Получить хранилище
Хранилище=ccStrStorage
Конец свойства
Public Sub ClearCache
Вызов ClearPrivateCache
Вызов ClearPublicCache
Завершить
публичную подписку ClearPrivateCache
ccStrCacheCode = ""
Завершить Sub
Public Sub ClearPublicCache
Приложение(ccStrCookieName&ccStrName) = ""
Завершить подписку
Public Sub ClearStorage
ccStrStorage = ""
Завершить подписку
Public Sub ClearCode
ccStrCode = ""
Завершить
публичную подписку SaveFront
ccStrStorage = ccStrCode & ccStrStorage
Завершить
публичную подписку SaveLast
ccStrStorage = ccStrStorage и ccStrCode
Завершить
публичную подписку SaveCode
Вызов SaveToFile(1)
Завершить
публичную подписку SaveStorage
Вызов SaveToFile(2)
End Sub
Public Sub SetVar(ccStrTag_in,ccStrValue_in)
ccStrCode = RePlace(ccStrCode, ccStrTag_in, ccStrValue_in)
Завершить
частную подписку SaveToFile(ccIntCode_in)
Dim 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.Write 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 = .ReadText
.Закрывать
Конец с
Установить 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
Конец, если
End Sub
End Class
ccFncIsEmpty(ByRef ccStrValue_in)
Если IsNull(ccStrValue_in) Или IsEmpty(ccStrValue_in) Или ccStrValue_in = "" Тогда
ccFncIsEmpty = Истина
Еще
ccFncIsEmpty = Ложь
Конец, если
Конечная функция
Пример
Содержимое файла шаблона
<#test#>
Программный код ASP
Dim objШаблон
Установить 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.")
'Сохранить в конец хранилища для временного хранения
Вызов objTemplate.SaveLast
'Сохранить код в файл
Вызов objTemplate.SaveCode
Response.Write objTemplate.Storage
Set objTemplate = Nothing
Показать результаты
Привет, мир. Автор Cloudream.
Сохранить результаты в файле.
Автор: Cloudream.