coldfusion
variabili
Ricerca…
Parametri
| Attributo | Descrizione |
|---|---|
| nome | (Obbligatorio) Nome del parametro / variabile. |
| predefinito | (Facoltativo) Valore per impostare il parametro su se non esiste. |
| max | (Opzionale) Il valore massimo valido; utilizzato solo per la convalida dell'intervallo. |
| min | (Opzionale) Il valore minimo valido; utilizzato solo per la convalida dell'intervallo. |
| modello | (Facoltativo) Un'espressione regolare JavaScript che il parametro deve corrispondere; usato solo per regex o valid_expression validation. |
| genere | (Facoltativo) Il formato valido per i dati. |
Utilizzando cfset
È possibile impostare una variabile ColdFusion utilizzando il tag <cfset> . Per generare la variabile, è necessario circondare il nome della variabile con i simboli hash # e racchiuderla all'interno dei tag <cfoutput> .
<cfset variablename="World!">
<cfoutput>
Hello #variablename#
</cfoutput>
Utilizzando cfparam
Il tag <cfparam> crea una variabile se non esiste già. È possibile assegnare un valore predefinito utilizzando l'attributo default . Questo può essere usato se vuoi creare una variabile, ma non vuoi sovrascriverla se è stata precedentemente creata altrove.
Qui la variabile non è stata impostata in precedenza, quindi verrà assegnata con il tag <cfparam> .
<cfparam name="firstName" default="Justin">
<cfoutput>
Hello #firstName#
</cfoutput>
Qui la variabile è già stata assegnata usando il tag <cfset> , quindi questo valore sostituirà il valore predefinito nel tag <cfparam> .
<cfset firstname="Justin">
<cfparam name="firstName" default="Barney">
<cfoutput>
Hello #firstName#
</cfoutput>
Verifica se esiste una variabile
È possibile verificare se una variabile è stata definita in un ambito utilizzando la funzione StructKeyExists() incorporata di ColdFusion. Può essere utilizzato all'interno di un tag <cfif> per impedire messaggi di errore nel caso in cui si tenti di fare riferimento a una variabile che non esiste. È inoltre possibile utilizzare questa funzione per determinare se un utente ha eseguito una determinata azione o meno. La sintassi per la funzione è
StructKeyExists(structure, "key")
L'esempio seguente controlla se la variabile firstName esiste nello scope delle variables .
<cfif StructKeyExists(variables, "firstName")>
Hello #variables.firstname#!
<cfelse>
Hello stranger!
</cfif>
In alternativa, è possibile utilizzare la funzione:
isDefined("scopeName.varName")
Per evitare ambiguità, si raccomanda di dichiarare l'ambito. Ad esempio, se si dispone di una variabile nel test dell'oscilloscopio
<cfset test.name = "Tracy" />
e testate per name nello scope globale, otterrete un risultato true .
isDefined("name") <!--- true --->
isDefined("x.name") <!--- false--->
isDefined("test.name") <!--- true --->
Impostazione di un ambito variabile
È pratica comune impostare le variabili dell'applicazione su un ambito oggetto. Questo li rende facili da identificare e distinguere dalle variabili in altri ambiti.
L'ambito Variabili in un CFC è privato per il CFC. Quando si impostano le variabili in questo ambito, non possono essere visualizzate dalle pagine che invocano il CFC.
<cfparam name="variables.firstName" default="Timmy">
<cfset variables.firstName="Justin">
Gli ambiti condivisi con la pagina chiamante includono: Modulo, URL, Richiesta, CGI, Cookie, Client, Sessione, Applicazione, Server e Flash. Le variabili in questi ambiti sono disponibili anche per tutte le pagine incluse in 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>