Defina uma matriz simples
Existem duas maneiras de definir e inicializar arrays em asp, vamos ver um exemplo de cada:
Método um:
MyArray = Array("janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro", "novembro","dezembro ")
O tamanho da matriz é determinado pelo número de elementos inicializados.
Método dois:
Copie o código do código da seguinte forma:
Dim myArray(2) 'Especifique o tamanho do array
myArray(0)="Janeiro"
meuArray(1)="fevereiro"
Expansão dinâmica de array
Copie o código do código da seguinte forma:
DIM meuArray()
REDIM myArray(20) 'Redefine o tamanho do array para 20
ReDim Preserve MyArray(i) 'Preserve retém os dados originais no array
matriz bidimensional
Exemplo:
dim MyArray(5,10) 'define um array bidimensional
Exemplo de atribuição bidimensional:
MYArray(3,3)=100
Existe também um método de implementação disfarçado para arrays bidimensionais:
dimMyArray(5)
MyArray(0)=Array(...) 'Matriz unidimensional
MyArray(1)=Array(...)'Matriz unidimensional
...
Ao acessar, utilize o formato MyArray(x)(y)
índice de matriz
Use o método acima para definir uma matriz. O subscrito do primeiro elemento de cada matriz de dimensão é 0 e o subscrito do último elemento é o número de elementos -1.
Mas você também pode especificar o subscrito da matriz, como:
dim MyArray1(3 to 10) 'O subscrito é de 3 a 10, MyArray(3) obtém o valor do primeiro elemento
Funções de array úteis
Função Ubound (nome do array) - retorna o subscrito do último elemento do array.
Função Lbound (nome do array) - retorna o subscrito do primeiro elemento do array, o padrão é 0.
Mais aplicações:
Função de classificação de array
[código]
função Classificar (ary)
KeepChecking = VERDADEIRO
Faça até KeepChecking = FALSE
KeepChecking = FALSO
Para I = 0 para UBound(ary)
Se I = UBound(ary) então saia para
Se ary(I) > ary(I+1) Então
PrimeiroValor = ary(I)
SegundoValor = ary(I+1)
ary(I) = SegundoValor
ary(I+1) = PrimeiroValor
KeepChecking = VERDADEIRO
Terminar se
Próximo
Laço
Classificar = ary
Função final
Exemplo de aplicação de função de classificação de array
Copie o código do código da seguinte forma:
DimMyArray
MinhaArray = Matriz(1,5,123,12,98)
MeuArray = Classificar(MeuArray)
Para I = Lbound(MyArray) para Ubound(MyArray)
Response.Write MyArray(I) & "<br>"
Próximo
Divida uma string e retorne um array
Copie o código do código da seguinte forma:
DimMyArray
MyArray = Split(string, separador)
Para I = Lbound(MyArray) para Ubound(MyArray)
Response.Write MyArray(I) & "<br>"
Próximo
Usando arrays em aplicativos e sessões
Aplicativo.Lock
Aplicativo("StoredArray") = MeuArray
Aplicativo.Desbloquear
LocalArray = Aplicativo("StoredArray")
Substituir matriz no aplicativo
Aplicativo.Lock
Aplicação("StoredArray") = LocalArray
Aplicativo.Desbloquear
O uso da sessão é igual ao do aplicativo
Importar dados do banco de dados para o array
DimMyArray
Obtenha todos os registros
MeuArray = RS.GetRows
Obtenha os primeiros 10 registros
MeuArray = RS.GetRows(10)
Para linha = 0 Para UBound(MyArray, 2)
Para col = 0 Para UBound(MyArray, 1)
Response.Write (coluna, linha) & "<br>"
Próximo
Próximo
Passar array para outra página
Existem muitas maneiras de passar um array para outra página. Atualmente, existem três métodos:
Defina uma string separada por vírgula e use a função Split para recriar a matriz na próxima página.
Armazene o array em uma variável de sessão e chame-o na próxima página.
Os arrays são passados pela área oculta do formulário, são automaticamente separados por vírgulas e, em seguida, a função Split é usada para recriar o array.
Os dois primeiros métodos são bons, mas ambos são mais complicados que o terceiro. Aqui apresentaremos apenas o terceiro porque é o mais simples e eficaz.
1.asp:
<%
escurecer eu
escurecer meuArray(20)
para I = 0 a 20
myArray(I)="Item " & I
próximo
%>
<html>
<corpo>
<form método="post" action="2.asp">
<%
para I=0 para ubound(myArray)
resposta.write "<tipo de entrada = nome oculto = valor myArray ='" & myArray (I) & "'>"
próximo
%>
<p>
<input type="enviar">
</form>
</body>
</html>
O que fizemos acima foi usar um campo implícito separado para armazenar cada elemento do array em um formulário. Vejamos a próxima página:
2.asp
<html>
<corpo>
<%
dim arrString
escurecer meuArray
escurecer eu
arrString=request("meuArray")
meuArray = split(arrString,",")
para I=0 para ubound(myArray)
response.write "Item "&I&" = " & myArray(I) & "<br>" & vbCrLf
próximo
%>
</body>
</html>
Artigos que podem lhe interessar: