$row is an array reference (sort of like a pointer in C); @$row is the actual (anonymous) array it references. The same goes for $sheet2 and @$sheet2.
What the code is essentially doing is to read each file line by line, split each line along commas, and store everythign in an array of arrays. So, for instance, the following file:
Name,Level,Writeups,XP
Corion,Pope (28),8574,108561
Grandfather,Cardinal (24),6205,67751
Athanasius,Prior (17),773,11777
AppleFritter,Pilgrim (8),92,784
would be turned into this data structure:
$VAR1 = [
[
'Corion',
'Pope (28)',
'8574',
'108561'
],
[
'Grandfather',
'Cardinal (24)',
'6205',
'67751'
],
[
'Athanasius',
'Prior (17)',
'773',
'11777'
],
[
'AppleFritter',
'Pilgrim (8)',
'92',
'784'
]
];
This is then used to sort the file on the first two columns.