Définir un tableau simple
Il existe deux manières de définir et d'initialiser des tableaux en asp, voyons un exemple de chacune :
Première méthode :
MonTableau = Array("Jan", "Févr", "Mar", "Avr", "Mai", "Jun", "Jul", "Août", "Sep", "Oct", "Nov", "Dec" ")
La taille du tableau est déterminée par le nombre d'éléments initialisés.
Deuxième méthode :
Copiez le code comme suit :
Dim myArray(2) 'Spécifiez la taille du tableau
monTableau(0)="Jan"
monTableau(1)="Février"
Expansion dynamique du tableau
Copiez le code comme suit :
DIM monArray()
REDIM myArray(20) 'Redéfinir la taille du tableau à 20
ReDim Preserve MyArray(i) 'Preserve conserve les données d'origine dans le tableau
tableau bidimensionnel
Exemple:
dim MyArray(5,10) 'définit un tableau à deux dimensions
Exemple d'affectation bidimensionnelle :
MONTableau(3,3)=100
Il existe également une méthode d'implémentation déguisée pour les tableaux bidimensionnels :
dimMonTableau(5)
MyArray(0)=Array(...) 'Tableau unidimensionnel
MyArray(1)=Array(...)'Tableau unidimensionnel
...
Lors de l'accès, utilisez le format MyArray(x)(y)
indice de tableau
Utilisez la méthode ci-dessus pour définir un tableau. L'indice du premier élément de chaque tableau de dimensions est 0 et l'indice du dernier élément est le nombre d'éléments -1.
Mais vous pouvez également spécifier l'indice du tableau, tel que :
dim MyArray1(3 to 10) 'L'indice est de 3 à 10, MyArray(3) récupère la valeur du premier élément
Fonctions de tableau utiles
Fonction Ubound (nom du tableau) : renvoie l'indice du dernier élément du tableau.
Fonction Lbound (nom du tableau) : renvoie l'indice du premier élément du tableau, la valeur par défaut est 0.
Plus d'applications :
Fonction de tri de tableau
[code]
fonction Trier(aire)
KeepChecking = VRAI
Faire jusqu'à ce que KeepChecking = FALSE
KeepChecking = FAUX
Pour I = 0 à UBound(ary)
Si I = UBound(ary) alors quittez pour
Si ary(I) > ary(I+1) Alors
PremièreValeur = ary(I)
SecondeValeur = ary(I+1)
ary(I) = SecondeValeur
ary(I+1) = PremièreValeur
KeepChecking = VRAI
Fin si
Suivant
Boucle
Trier = ary
Fin de fonction
Exemple d'application de la fonction de tri de tableaux
Copiez le code comme suit :
DimMonTableau
MonTableau = Tableau(1,5,123,12,98)
MonTableau = Trier(MonTableau)
Pour I = Lbound (MyArray) à Ubound (MyArray)
Réponse.Écrire MyArray(I) & "<br>"
Suivant
Diviser une chaîne et renvoyer un tableau
Copiez le code comme suit :
DimMonTableau
MyArray = Split (chaîne, séparateur)
Pour I = Lbound (MyArray) à Ubound (MyArray)
Réponse.Écrire MyArray(I) & "<br>"
Suivant
Utilisation de tableaux dans l'application et la session
Application.Lock
Application("StoredArray") = MonTableau
Application.Déverrouiller
LocalArray = Application("StoredArray")
Écraser le tableau dans l'application
Application.Lock
Application("StoredArray") = LocalArray
Application.Déverrouiller
L'utilisation de la session est la même que celle de l'application
Importer des données de la base de données dans un tableau
DimMonTableau
Obtenez tous les enregistrements
MonTableau = RS.GetRows
Obtenez les 10 premiers enregistrements
MonTableau = RS.GetRows(10)
Pour la ligne = 0 Vers UBound (MyArray, 2)
Pour col = 0 Vers UBound (MyArray, 1)
Response.Write (colonne, ligne) & "<br>"
Suivant
Suivant
Passer le tableau à une autre page
Il existe de nombreuses façons de transmettre un tableau à une autre page. Il existe actuellement trois méthodes :
Définissez une chaîne séparée par des virgules, puis utilisez la fonction Split pour recréer le tableau sur la page suivante.
Stockez le tableau dans une variable de session et appelez-le sur la page suivante.
Les tableaux passent par la zone cachée du formulaire, ils sont automatiquement séparés par des virgules, puis la fonction Split est utilisée pour recréer le tableau.
Les deux premières méthodes sont bonnes, mais toutes deux sont plus compliquées que la troisième. Nous ne présenterons ici que la troisième car c’est la plus simple et la plus efficace.
1.asp :
<%
je m'assombris
atténuer monArray(20)
pour I=0 à 20
monArray(I)="Article " & I
suivant
%>
<html>
<corps>
<form method="post" action="2.asp">
<%
pour I=0 à ubound(myArray)
réponse.write "<input type=hidden name=myArray value="" & myArray(I) & "'>"
suivant
%>
<p>
<type d'entrée="soumettre">
</form>
</corps>
</html>
Ce que nous avons fait ci-dessus, c'est utiliser un champ implicite distinct pour stocker chaque élément du tableau sous un formulaire. Regardons la page suivante :
2.asp
<html>
<corps>
<%
dim arrString
atténuer monArray
je m'assombris
arrString=request("monArray")
monTableau = split(arrString,",")
pour I=0 à ubound(myArray)
réponse.write "Item "&I&" = " & myArray(I) & "<br>" & vbCrLf
suivant
%>
</corps>
</html>
Articles qui pourraient vous intéresser :