Поиск…


параметры

атрибут Описание
название (Обязательно) Имя параметра / переменной.
дефолт (Необязательно) Значение для установки параметра, если оно не существует.
Максимум (Необязательно) Максимальное допустимое значение; используется только для проверки диапазона.
мин (Необязательно) Минимальное допустимое значение; используется только для проверки диапазона.
шаблон (Необязательно) Регулярное выражение 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>


Modified text is an extract of the original Stack Overflow Documentation
Лицензировано согласно CC BY-SA 3.0
Не связан с Stack Overflow