coldfusion
переменные
Поиск…
параметры
| атрибут | Описание |
|---|---|
| название | (Обязательно) Имя параметра / переменной. |
| дефолт | (Необязательно) Значение для установки параметра, если оно не существует. |
| Максимум | (Необязательно) Максимальное допустимое значение; используется только для проверки диапазона. |
| мин | (Необязательно) Минимальное допустимое значение; используется только для проверки диапазона. |
| шаблон | (Необязательно) Регулярное выражение JavaScript, которое должен соответствовать параметру; используется только для проверки регулярных выражений или регулярных выражений. |
| тип | (Необязательно) Действительный формат данных. |
Использование cfset
Вы можете установить переменную ColdFusion с помощью <cfset> . Для вывода переменной, вам нужно окружить имя переменной хэш # символов и вложить его в <cfoutput> теги.
<cfset variablename="World!">
<cfoutput>
Hello #variablename#
</cfoutput>
Использование cfparam
<cfparam> создает переменную, если она еще не существует. Вы можете присвоить значение по default атрибут по default . Это можно использовать, если вы хотите создать переменную, но не хотите перезаписывать ее, если она была ранее создана в другом месте.
Здесь переменная не была установлена ранее, поэтому она будет назначена тегом <cfparam> .
<cfparam name="firstName" default="Justin">
<cfoutput>
Hello #firstName#
</cfoutput>
Здесь переменная уже назначена с помощью <cfset> , поэтому это значение переопределит значение по умолчанию в <cfparam> .
<cfset firstname="Justin">
<cfparam name="firstName" default="Barney">
<cfoutput>
Hello #firstName#
</cfoutput>
Проверка наличия переменной
Вы можете проверить, была ли переменная определена в области с помощью функции ColdFusion, встроенной в StructKeyExists() . Это можно использовать внутри <cfif> чтобы предотвратить сообщения об ошибках в случае, если вы пытаетесь ссылаться на переменную, которая не существует. Вы также можете использовать эту функцию для определения того, выполнил ли пользователь определенное действие или нет. Синтаксис функции
StructKeyExists(structure, "key")
В следующем примере проверяется, существует ли переменная firstName в области variables .
<cfif StructKeyExists(variables, "firstName")>
Hello #variables.firstname#!
<cfelse>
Hello stranger!
</cfif>
Кроме того, вы можете использовать функцию:
isDefined("scopeName.varName")
Чтобы избежать двусмысленности, рекомендуется объявить область действия. Например, если у вас есть переменная в test
<cfset test.name = "Tracy" />
и вы проверяете name в глобальной области, вы получите результат true .
isDefined("name") <!--- true --->
isDefined("x.name") <!--- false--->
isDefined("test.name") <!--- true --->
Настройка области переменных
Общепринятой практикой является установка переменных приложения в область объектов. Это позволяет легко идентифицировать и отличать от переменных в других областях.
Область переменных в CFC является частной для CFC. Когда вы устанавливаете переменные в этой области, они не могут быть видны страницами, вызывающими CFC.
<cfparam name="variables.firstName" default="Timmy">
<cfset variables.firstName="Justin">
Области, разделяемые с вызывающей страницей, включают: форму, URL, запрос, CGI, Cookie, клиент, сеанс, приложение, сервер и Flash. Переменные в этих областях также доступны для всех страниц, которые включены в CFC.
CFC:
<cfset url.sessionId="23b5ly17">
<cfinclude template="check_session.cfm">
check_session.cfm
<cfif url.sessionId eq "23b5ly17">
<p>Welcome back!</p>
</cfif>