jueves, 22 de octubre de 2015

Variables de ColdFusion vienen en muchos tipos diferentes. En primer lugar, todas las variables pertenecen a un ámbito. Hay muchos ámbitos diferentes y cada variable creada en su aplicación pertenece a uno de estos ámbitos. En segundo lugar, todas las variables pueden ser locales o globales. En tercer lugar, todas las variables son o persistente o no persistente.

Scopes Variable

El ámbito de una variable se determina por su origen. El alcance determina un número de propiedades acerca de la variable, como su vida útil, tiempo de espera, y la ubicación de almacenamiento, y por lo tanto, la forma en que se puede utilizar.
A continuación se muestra una lista de los ámbitos disponibles para las variables de ColdFusion:
AlcanceDescripción
VariablesEste ámbito se refiere a las variables locales que no están reservadas específicamente para su uso en las etiquetas personalizadas. Si establece una variable sin especificar un ámbito de aplicación (es decir, <cfset variableName = "">,pertenecerá automáticamente al alcance variables.
AtributosEste ámbito de aplicación se utiliza dentro de una etiqueta personalizada. Cuando se pasa un atributo a una etiqueta personalizada, que esté disponible en la etiqueta personalizada en el ámbito atributos.
CallerSe utiliza dentro de una etiqueta personalizada para establecer o leer variables dentro de la plantilla que lo llamó.
ArgumentosSe utiliza dentro de una función para referirse a los argumentos que se aprobaron en la plantilla que llama.
EstaSe utiliza dentro de un componente para almacenar sus propias propiedades.
PeticiónEl alcance de solicitud se utiliza para la solicitud actual. Estas variables son variables globales no persistentes.
CGIVariables CGI describen el entorno de las solicitudes actuales, se crean automáticamente y son de sólo lectura. No se puede modificar una variable CGI, solamente leyó.
FormularioLas variables presentadas desde un formulario utilizando el método "Post" pasan a formar parte del ámbito de aplicación de formularios.
URLVariables pasadas a través de la URL son parte del alcance URL.
CamareroVariables de ámbito de servidor están disponibles para todas las aplicaciones en el servidor actual.
SolicitudVariables de ámbito de aplicación están disponibles para una aplicación de conjunto (como se define en el <cfapplication name = "" ... la etiqueta dentro del archivo Application.cfm).
SesiónEl alcance de sesiones está disponible para la vida de la sesión de un usuario. La longitud de la vida útil puede ser determinado por un período determinado de inactividad. Este período se puede determinar en el cfapplication etiqueta. Por ejemplo, para establecer un tiempo de espera después de 20 minutos de inactividad: <cfapplication ... SessionTimeout = "#CreateTimeSpan (0,0,20,0) #"
ClienteLas variables de cliente se almacenan en el servidor, ya sea en el registro o una base de datos (pero también se pueden almacenar en una cookie en el equipo cliente).
CookiesLas variables de cookies son globales, y persistente, las variables almacenadas en la máquina del usuario.

"Ámbito" sus variables

Al configurar o leer una variable, es una buena práctica para contar ColdFusion que alcance al que pertenece. Aunque esto no es necesario, será evitar cualquier confusión en torno a si la variable correcta está siendo utilizado o no. De vez en cuando puede encontrarse con dos o más variables con el mismo nombre, pero perteneciente a un ámbito diferente. Para evitar el mal que se utilice, usted debe alcance sus variables.
Usted alcance una variable simplemente anteponiendo el nombre de la variable con el nombre del ámbito (y separándolos con un punto).
 
<Cfset  scope.variablename = "valor"> 
<cfoutput>
# scope.variablename #

</ Cfoutput>
Por ejemplo, para el alcance de una variable de sesión, usted haría algo como esto:
 
<cfset Session.BodyType = "perfecto">
<cfoutput>

Tipo de cuerpo: # Session.BodyType #

</ Cfoutput>

Persistencia variable

El siguiente cuadro resume los diferentes ámbitos de variables, ya sean locales o globales, e indica si son variables persistentes o no persistentes.


 No persistentePerseverante
Variables Locales
  • Variables
  • Atributos
  • Caller
  • Argumentos
  • Esta
(ninguno)
Variables globales
  • Petición
  • CGI
  • Formulario
  • URL
  • Camarero
  • Solicitud
  • Sesión
  • Cliente
  • Cookies

0 comentarios :

Publicar un comentario