Tambien podrias hacer.. algo asi.. por que supongo que te convendria tener mejor los datos juntos la palabra con sus pesos.. en un mismo array.. asi no andas manejando indices.. pero en fin :D
Código PHP:
$orden = array_combine($palabras_no_rep,$pesos);
arsort($orden);
foreach($orden as $nombre => $valor){
echo "La palabra: <b>".$nombre."</b> tiene un peso de ".$valor." y una longitud de".strlen($nombre)."<br/>";
}