Szukaj…


Parametry

Atrybut Opis
Nazwa (Wymagane) Nazwa parametru / zmiennej.
domyślna (Opcjonalnie) Wartość do ustawienia parametru, jeśli nie istnieje.
max (Opcjonalnie) Maksymalna dopuszczalna wartość; używane tylko do sprawdzania poprawności zakresu.
min (Opcjonalnie) Minimalna ważna wartość; używane tylko do sprawdzania poprawności zakresu.
wzór (Opcjonalnie) Wyrażenie regularne JavaScript, które parametr musi dopasować; używany tylko do sprawdzania poprawności wyrażenia regularnego lub wyrażenia regularnego.
rodzaj (Opcjonalnie) Prawidłowy format danych.

Korzystanie z cfset

Możesz ustawić zmienną ColdFusion za pomocą znacznika <cfset> . Aby wyprowadzić zmienną, musisz otoczyć nazwę zmiennej symbolami krzyżyka # i <cfoutput> ją w <cfoutput> .

<cfset variablename="World!">
<cfoutput>
    Hello #variablename#
</cfoutput>

Korzystanie z cfparam

<cfparam> tworzy zmienną, jeśli jeszcze nie istnieje. Możesz przypisać wartość domyślną za pomocą atrybutu default . Można tego użyć, jeśli chcesz utworzyć zmienną, ale nie chcesz jej zastępować, jeśli została wcześniej utworzona w innym miejscu.

Tutaj zmienna nie została wcześniej ustawiona, więc zostanie przypisana do tagu <cfparam> .

<cfparam name="firstName" default="Justin">
<cfoutput>
    Hello #firstName#
</cfoutput>

Tutaj zmienna została już przypisana za pomocą znacznika <cfset> , więc ta wartość zastąpi wartość domyślną w znaczniku <cfparam> .

<cfset firstname="Justin">

<cfparam name="firstName" default="Barney">
<cfoutput>
    Hello #firstName#
</cfoutput>

Sprawdzanie, czy istnieje zmienna

Możesz sprawdzić, czy zmienna została zdefiniowana w zakresie, używając wbudowanej funkcji StructKeyExists() ColdFusion. Można tego użyć wewnątrz znacznika <cfif> aby zapobiec komunikatom o błędach w przypadku próby odwołania się do zmiennej, która nie istnieje. Możesz także użyć tej funkcji do ustalenia, czy użytkownik wykonał określoną czynność, czy nie. Składnia tej funkcji to

StructKeyExists(structure, "key")

Poniższy przykład sprawdza, czy zmienna firstName istnieje w zakresie variables .

<cfif StructKeyExists(variables, "firstName")>
    Hello #variables.firstname#!
<cfelse>
    Hello stranger!
</cfif>

Alternatywnie możesz użyć funkcji:

isDefined("scopeName.varName")

Aby uniknąć dwuznaczności, zaleca się zadeklarowanie zakresu. Na przykład jeśli masz zmienną w test zakresu

<cfset test.name = "Tracy" />

i testujesz name w globalnym zasięgu, uzyskasz wynik true .

isDefined("name") <!--- true --->
isDefined("x.name") <!--- false--->
isDefined("test.name") <!--- true --->

Ustawienie zakresu zmiennego

Powszechną praktyką jest ustawianie zmiennych aplikacji na zakres obiektu. Dzięki temu są łatwe do zidentyfikowania i odróżnienia od zmiennych w innych zakresach.

Zakres zmiennych w CFC jest prywatny dla CFC. Kiedy ustawisz zmienne w tym zakresie, nie będą one widoczne dla stron wywołujących CFC.

<cfparam name="variables.firstName" default="Timmy">
<cfset variables.firstName="Justin">

Zakresy udostępniane stronie wywołującej obejmują: formularz, adres URL, żądanie, CGI, plik cookie, klient, sesję, aplikację, serwer i Flash. Zmienne w tych zakresach są również dostępne dla wszystkich stron zawartych w 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
Licencjonowany na podstawie CC BY-SA 3.0
Nie związany z Stack Overflow