Come abbiamo accennato in precedenza, il
linguaggio Perl, distingue il tipo di variabili limitandosi a due
soli gruppi, e cioè le variabili scalari e le variabili array.
Si definisce un array una sequenza ordinata di valori scalari, in
grado di distinguere un unico valore. Come di consueto, nel
linguaggio Perl, anche l'impiego di array risulta semplice e
flessibile, risolvendo agevolmente le situazioni più ostiche.
Vediamo quindi un esempio pratico per rendere meglio l'idea:
@collaboratori=('Fabio', 'Davide', 'Alessandro',
'Salvatore');
$c=@collaboratori;
print "Io, Giordano ho $c collaboratori, ed insieme cerchiamo di dare
corpo al nostro sito\n";
print "i miei $c collaboratori si chiamano
@collaboratori\n";
print "ma mentre io, $collaboratori[0], $collaboratori[1] e
$collaboratori[2] ci diamo da fare\n";
print "$collaboratori[3], non si è ancora fatto sentire";
Bene, come potrete notare, ci è bastato creare un array di
valori per poterci sbizzarrire nella creazione di testi stravaganti,
ognuno di voi potrà scegliere i valori che vorrà ed in qualsiasi
numero. Se prestate ulteriolmente attenzione all'esempio noterete
che con la definizione del nostro array abbiamo creato anche un
numero di variabili scalari pari al numero dei valori specificati
all'interno dell'array, richiamabili in qualsiasi momento dal nostro
script, fate molta attenzione a iniziare il conteggio da 0 e non da
1. Vediamo a titolo di esempio, come far stampare su stringhe
differenti i valori di ogni scalare definito in un array:
@a=('qui','quo','qua');
# definiamo il valore dell'array
print "$a[0]\n";
# chiediamo di stampare il primo
scalare
# definito dall'array @a chiamando lo scalare
# con lo stesso nome e cioè $a
print "$a[1]\n";
print "$a[2]\n";
print "$a[3]\n";
# questo richiamo non darà alcun
errore,
# in quanto l'array @a non definisce un quarto elemento
# per risultato otterremo solo un ritorno accapo
# ottenuto dall'escape \n, mentre $a[3] verrà semplicemente
# ignorato, (questa si che è flessibilità!!!)
Torniamo adesso all'esempio dei miei collaboratori, ed ampliamo
il programma nel seguente modo:
@collaboratori=('Fabio', 'Davide', 'Alessandro',
'Salvatore');
$c=@collaboratori;
print "Io, Giordano ho $c collaboratori, ed insieme cerchiamo di dare
corpo al nostro sito\n";
print "i miei $c collaboratori si chiamano
@collaboratori\n";
print "ma mentre io, $collaboratori[0], $collaboratori[1] e
$collaboratori[2] ci diamo da fare\n";
print "$collaboratori[3], non si è ancora fatto sentire\n";
@a=@collaboratori;
push(@a,'Giordano');
$a=@a;
print "In tutto siamo $a e ci chiamiamo @a\n";
Come potete vedere le cose che si possono fare con le array sono
infinite, ma infinitamente semplici, come ad esempio uguagliare un
array ad un altro, rompere il contenuto di un array tramite il
comando push per aggiungere altri elementi, ecc ecc.
Per oggi abbiamo dato una bella infarinatura sugli array, nella
prossima lezione vedremo di addentrarci più nel dettaglio.