coldfusion
Variabelen
Zoeken…
parameters
| Attribuut | Beschrijving |
|---|---|
| naam | (Vereist) Naam van de parameter / variabele. |
| standaard | (Optioneel) Waarde om de parameter in te stellen als deze niet bestaat. |
| max | (Optioneel) De maximale geldige waarde; alleen gebruikt voor bereikvalidatie. |
| min | (Optioneel) De minimale geldige waarde; alleen gebruikt voor bereikvalidatie. |
| patroon | (Optioneel) Een reguliere JavaScript-expressie die moet overeenkomen met de parameter; alleen gebruikt voor validatie van regex of regular_expression. |
| type | (Optioneel) Het geldige formaat voor de gegevens. |
Cfset gebruiken
U kunt een ColdFusion-variabele instellen met de tag <cfset> . Om de variabele uit te voeren, moet u de naam van de variabele omgeven met hash # -symbolen en deze tussen <cfoutput> -tags plaatsen.
<cfset variablename="World!">
<cfoutput>
Hello #variablename#
</cfoutput>
Cfparam gebruiken
De tag <cfparam> maakt een variabele als deze nog niet bestaat. U kunt een standaardwaarde toewijzen met behulp van het default . Dit kan worden gebruikt als u een variabele wilt maken, maar deze niet wilt overschrijven als deze eerder elders is gemaakt.
Hier is de variabele niet eerder ingesteld, dus deze wordt toegewezen met de tag <cfparam> .
<cfparam name="firstName" default="Justin">
<cfoutput>
Hello #firstName#
</cfoutput>
Hier is de variabele al toegewezen met de tag <cfset> , dus deze waarde overschrijft de standaardwaarde in de tag <cfparam> .
<cfset firstname="Justin">
<cfparam name="firstName" default="Barney">
<cfoutput>
Hello #firstName#
</cfoutput>
Controleren of een variabele bestaat
U kunt controleren of een variabele in een bereik is gedefinieerd met behulp van de ingebouwde functie StructKeyExists() van ColdFusion. Dit kan worden gebruikt in een <cfif> -tag om foutmeldingen te voorkomen in het geval u probeert te verwijzen naar een variabele die niet bestaat. U kunt deze functie ook gebruiken om te bepalen of een gebruiker een bepaalde actie heeft uitgevoerd of niet. De syntaxis voor de functie is
StructKeyExists(structure, "key")
In het volgende voorbeeld wordt gecontroleerd of de variabele firstName voorkomt in het variables .
<cfif StructKeyExists(variables, "firstName")>
Hello #variables.firstname#!
<cfelse>
Hello stranger!
</cfif>
Als alternatief kunt u de functie gebruiken:
isDefined("scopeName.varName")
Om dubbelzinnigheid te voorkomen, wordt aanbevolen om de scope aan te geven. Bijvoorbeeld, als u een variabele in de reikwijdte test
<cfset test.name = "Tracy" />
en u test op name in het globale bereik, krijgt u een resultaat van true .
isDefined("name") <!--- true --->
isDefined("x.name") <!--- false--->
isDefined("test.name") <!--- true --->
Een variabel bereik instellen
Het is gebruikelijk om toepassingsvariabelen in te stellen op een objectbereik. Hierdoor blijven ze gemakkelijk te identificeren en te onderscheiden van variabelen in andere bereiken.
Het bereik van de variabelen in een CFC is privé voor de CFC. Wanneer u variabelen in dit bereik instelt, kunnen deze niet worden bekeken door pagina's die de CFC oproepen.
<cfparam name="variables.firstName" default="Timmy">
<cfset variables.firstName="Justin">
Scopes die worden gedeeld met de oproeppagina zijn onder meer: formulier, URL, aanvraag, CGI, cookie, client, sessie, applicatie, server en Flash. Variabelen in deze bereiken zijn ook beschikbaar voor alle pagina's die door een CFC zijn opgenomen.
CFC:
<cfset url.sessionId="23b5ly17">
<cfinclude template="check_session.cfm">
check_session.cfm
<cfif url.sessionId eq "23b5ly17">
<p>Welcome back!</p>
</cfif>