Can you show us the array code?
if each array element looks like this:
<a href='http://aaaaaaaaa' target='blank'>Good link</a>
then you aren't going to be able to sort that by the description.
Better to store the elements in the array and create the HTML on the fly.
sort them using usort and a custom function. I got the idea from the example on php.net:
http://www.php.net/manual/en/function.usort.php
example:
function cmp ($a, $b) {
return strcmp($a["desc"], $b["desc"]);
}
$links[0]['url'] = "aaaaaaaaa";
$links[0]['desc'] = "Good link";
$links[1]['url'] = "bbbbbbb";
$links[1]['desc'] = "Another link";
$links[2]['url'] = "ccccccc";
$links[2]['desc'] = "Hello World";
usort($links, "cmp");
while (list ($key, $value) = each ($links)) {
echo "<a href=\"http://" . $value['url'] . "\" target=_blank>" . $value["desc"] . "</a><br>\n";
}