Finalmente conseguí arreglar la ruta, leyendo en el foro encontré varios ejemplos y fui probando hasta que este funciono.
Código PHP:
<?php
$columns = 2;
$ele = array();
$directorio = opendir("Categorias/Camp_Primera_Division");
while ($archivo = readdir($directorio))
{
$nombreArch = ucwords($archivo);
$nombreArch = str_replace("..", "Atras", $nombreArch);
$ele[] = $nombreArch;
}
closedir($directorio);
asort ($ele);
echo "<table width='100%' align='center'";
echo "border='1' cellpadding='3' cellspacing='3'>";
$z = 0;
foreach ($ele as $arc)
{
if ($z % $columns == 0)
{
echo "<tr>";
}
echo '<td><a target=_blank href="'.$ruta.'Categorias/Camp_Primera_Division/'.$arc.'">'.$arc.'</a></td>';
$z++;
if ($z % $columns == 0)
{
echo "</tr>";
}
}
echo '</table>';
?>
Que alegría

.
- Solo que aparece el index de los directorios, y también aparecen . y Atrás
como puedo hacer para evitar que se muestren ?