Recherche…


Paramètres

Attribut La description
prénom (Obligatoire) Nom du paramètre / variable.
défaut (Facultatif) Valeur permettant de définir le paramètre s'il n'existe pas.
max (Facultatif) La valeur maximale valide; utilisé uniquement pour la validation de gamme.
min (Facultatif) La valeur minimale valide; utilisé uniquement pour la validation de gamme.
modèle (Facultatif) Une expression régulière JavaScript à laquelle le paramètre doit correspondre; utilisé uniquement pour la validation regex ou regular_expression.
type (Facultatif) Le format valide pour les données.

Utiliser cfset

Vous pouvez définir une variable ColdFusion à l'aide de la <cfset> . Pour générer la variable, vous devez entourer le nom de la variable avec des symboles de hachage # et la <cfoutput> balises <cfoutput> .

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

Utiliser cfparam

La <cfparam> crée une variable si elle n'existe pas déjà. Vous pouvez attribuer une valeur par défaut à l'aide de l'attribut default . Cela peut être utilisé si vous souhaitez créer une variable, mais ne souhaitez pas la remplacer si elle a déjà été créée ailleurs.

Ici, la variable n'a pas été définie précédemment, elle sera donc assignée avec la <cfparam> .

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

Ici, la variable a déjà été affectée à l'aide de la <cfset> , cette valeur remplacera donc la valeur par défaut de la <cfparam> .

<cfset firstname="Justin">

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

Vérifier si une variable existe

Vous pouvez vérifier si une variable a été définie dans une portée en utilisant la fonction intégrée StructKeyExists() ColdFusion. Cela peut être utilisé dans une <cfif> pour empêcher les messages d'erreur si vous tentez de faire référence à une variable qui n'existe pas. Vous pouvez également utiliser cette fonction pour déterminer si un utilisateur a effectué une certaine action ou non. La syntaxe de la fonction est

StructKeyExists(structure, "key")

L'exemple suivant vérifie si la variable firstName existe dans la portée des variables .

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

Vous pouvez également utiliser la fonction:

isDefined("scopeName.varName")

Pour éviter toute ambiguïté, il est recommandé de déclarer la portée. Par exemple, si vous avez une variable dans le test portée

<cfset test.name = "Tracy" />

et vous testez pour le name dans la portée globale, vous obtiendrez un résultat de true .

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

Définition d'une portée variable

Il est courant de définir des variables d'application sur une étendue d'objet. Cela les rend faciles à identifier et à distinguer des variables dans d'autres portées.

La portée des variables dans un CFC est privée au CFC. Lorsque vous définissez des variables dans cette étendue, elles ne peuvent pas être vues par les pages qui invoquent le CFC.

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

Les étendues partagées avec la page appelante comprennent: formulaire, URL, demande, CGI, cookie, client, session, application, serveur et Flash. Les variables de ces portées sont également disponibles pour toutes les pages incluses dans un 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
Sous licence CC BY-SA 3.0
Non affilié à Stack Overflow