<?php

function url_amigavel($string){
    $url = str_replace(' ', '_', $string);
    $url = preg_replace("/&([a-z])[a-z]+;/i", "$1", htmlentities($url));

    return strtolower($url);
}

echo url_amigavel('alguma coisa & um #@><teste');