rendered paste body<?php /* vim: set sts=2 ts=2 expandtab : */
function last_name_sort($a, $b) {
$olda = $a;
$oldb = $b;
if(preg_match('/(\S+)$/', $a, $matches)) $a = $matches[1];
if(preg_match('/(\S+)$/', $b, $matches)) $b = $matches[1];
$rv = strcmp($a, $b);
return $rv;
if($rv != 0) return $rv;
return strcmp($olda, $oldb);
}
$dir = opendir('bios');
$names = array();
while (($file = readdir($dir)) != false) {
if ($file{0} == '.') continue; // skip hidden files and dirs
$file = explode('.', $file);
$file = $file[0];
$names[$file] = ucwords(str_replace('_', ' ', $file));
}
uasort($names, "last_name_sort");
foreach ($names as $file => $name) {
echo $name, "\n";
}