Usando CFSWITCH, CFCASE e CFDEFAULTCASE
Começaremos este tutorial vendo como tratar condições de múltiplas opções com as tags , e . Estas três tags são usadas em conjunto sendo a CFSWITCH responsável pela expressão, a CFCASE pelas comparações e CFDEFAULTCASE para quando nenhum valor atende as comparações feitas pela CFCASE.
Veremos agora a estrutura de utilização dessas três tags:
[crayon]
tags CFML ou HTML
comparações adicionais
tags CFML ou HTML
[/crayon]
Abaixo entenderemos cada parâmetro passado nestas tags:
Parâmetro | Descrição |
---|---|
EXPRESSION | Obrigatório. Aqui deve ser colocado a expressão/variável que irá ter seu valor comparado. |
VALUE | Obrigatório. Este parâmetro é responsável pelos valores que serão comparados a expressão. |
DELIMITERS | Opcional. Define que caracter separa uma lista de valores no parâmetro VALUE. Seu valor padrão é a vírgula (,) |
Como podemos ver, utilizando estas tags poderemos substituir uma série de CFIFs aninhados. Para melhor entendermos teremos abaixo três exemplos de como utilizar-los.
Utilizando CFSWITCH, CFCASE e CFDEFAULTCASE com uma variável
[crayon]
Um
Dois
Três
Nenhuma das anteriores
[/crayon]
No exemplo acima como a variável TOTAL é a soma das outras duas variáveis
(VALOR1, VALOR2), teremos como resposta “Três”.
Utilizando CFSWITCH, CFCASE e CFDEFAULTCASE com uma variável e o parâmetro DELIMITERS.
[crayon]
Um
Dois
Três
Nenhuma das anteriores
[/crayon]
Note que o exemplo acima só houve mudanças no primeiro CFCASE, que retornará “Um” caso a variável TOTAL seja igual a 1 ou 4.
Utilizando CFSWITCH, CFCASE e CFDEFAULTCASE com uma query.
[crayon]
select * from cadastro
Moradores do Rio de Janeiro:
#nome# – #email#
Moradores de Santos:
#nome# – #email#
Moradores de outras localidades:
#nome# – #email#
[/crayon]
Vimos neste exemplo que podemos também trabalhar com resultados de uma query. No exemplo acima os nomes são classificados de acordo com sua localidade.
Funções
Estaremos vendo agora algumas funções muito importantes para o desenvolvimento de aplicações em ColdFusion. Irão encontrar aqui funções que tratam data, hora, formatação de dados, matemáticas e strings.
Funções de data
– Day
Retorna o dia, de 1 a 31, para uma data. Sintaxe: Day(data)
Exemplo:
Note que o valor da variável DIA_VENDA será 02 e não 01, pois a função utiliza a formatação mês/dia/ano.
– Month
Retorna o mês, de 1 a 12, para a data. Sintaxe: Month(data)
Exemplo:
A exemplo da função Day, o mesmo acontece aqui; o resultado da variável MES_VENDA é 01 e não 02.
– Year
Retorna o ano de uma data. Sintaxe: Year(data)
Exemplo:
Funções de Hora
– Hour
Retorna a hora, entre 0 e 23, de um horário. Sintaxe: Hour(horário)
Exemplo:
– Minute
Retorna os minutos de um horário. Sintaxe: Minute(horário)
Exemplo:
– Second
Retorna os segundos de um horário. Sintaxe: Second(horário)
Exemplo:
Agora veremos uma função que é muito útil tanto para a utilização com funções de data quanto para funções de hora.
– Now
Esta função retorna a data e hora do sistema, em seu servidor ColdFusion. Sintaxe: Now()
Exemplo:
Utilizando as funções de Data e Hora
Para termos uma maior compreensão da utilização destas funções iremos ver agora como utiliza-las na prática, através de um exemplo que incorpora todas as funções passadas até agora.
[crayon]
Data Gerada pelo sistema: #data_atual#
Dia: #dia_atual# Mês: #mes_atual# Ano: #ano_atual#
Data Gerada pela aplicação: #dia_atual#/#mes_atual#/#ano_atual#
Hora: #hora_atual# Minuto: #minuto_atual# Segundo: #segundo_atual#
Horário Gerado pela aplicação: #hora_atual#:#minuto_atual#:#segundo_atual#
[/crayon]
Funções de Formatação
– DateFormat
Retorna uma data formatada de acordo com uma máscara especificada. Se nenhuma máscara for definida, a função retorna a data usando o formato ddmmm-yy. Sintaxe: DateFormat(data, máscara)
Máscara:
- d – dia sem zero a esquerda
- dd – dia com dois dígitos incluindo o zero
- m – mês sem zero a esquerda
- mm – mês com dois dígitos incluindo o zero
- mmm – abreviação do mês com as três primeiras letras
- mmmm – mês por extenso
- yy – ano com dois dígitos
- yyyy – ano com quatro dígitos
Exemplo:
Teremos como resultado: 02/01/2000, lembrando que o formato padrão do ColdFusion é mês/dia/ano.
– TimeFormat
Esta função retorna o horário formatado de acordo com uma máscara especificada. Se nenhuma máscara for definida, por padrão será aceito o formato hh:mm tt. Sintaxe: TimeFormat(horário, máscara)
Máscara:
- h – hora sem zero a esquerda. Relógio de 12h
- hh – hora com dois dígitos incluindo o zero. Relógio de 12h
- H – hora sem zero a esquerda. Relógio de 24h
- HH – h ora com dois dígitos incluindo o zero. Relógio de 24h
- m – minutos sem zero a esquerda
- mm – minutos com dois dígitos incluindo o zero
- s – segundos sem zero a esquerda
- ss – segundos com dois dígitos incluindo o zero
- t – identifica o horário como sendo A (antes meio-dia) ou P (pós meio-dia)
- tt – identifica o horário como sendo AM ou PM
Exemplo:
Teremos como resultado: 01:54:22PM.
Utilizando as funções de formatação DateFormat e TimeFormat
Vimos no exemplo anterior como utilizar na prática as funções de data e hora, e agora poderemos otimizar este exemplo utilizando as funções DateFormat e TimeFormat. Vejamos como:
[crayon]
Data Gerada pelo sistema: #Now()#
Data Gerada pela aplicação: #data_atual#
Horário Gerado pela aplicação: #hora_atual#
[/crayon]
URLEncodedFormat
Esta função converte uma string para formato de URL. Ou seja, se você tiver uma string com espaços, esta função substitui estes espaços por caracteres especiais, para que a string possa ser passada através da URL. Sintaxe: URLEncodedFormat(string)
Exemplo:
Como resultado teremos: Jos%E9%20Joaquim%20Silva
Funções Matemáticas
– Max
Retorna o valor maior entre dois números. Sintaxe: Max(número1, número2)
Exemplo:
– Min
Retorna o valor menor entre dois números. Sintaxe: Min(número1,número2)
Exemplo:
– RandRange
Retorna um número aleatório entre dois números. Os números devem ser menores que 100.000.000. Sintaxe: RandRange(número1, número2)
Exemplo:
Funções de String
– Len
Esta função retorna o total de caracteres de uma string. Sintaxe: Len(string)
Exemplo:
– LTrim
Remove todos os espaços em branco à esquerda de uma string. Sintaxe: LTrim(string)
Exemplo:
– RTrim
Remove todos os espaços em branco à direita de uma string. Sintaxe: RTrim(string)
Exemplo: