Generowanie losowego hasła

Czasami jest potrzebna szybko gotowa funkcja generowania losowego hasła. Ale tak aby hasło nie było zbyt mocno skomplikowane ale na tyle aby zbyt łatwo nie można było go złamać. Mam nadzieję, że komuś się przyda ten gotowiec.

    public function generatePassword($limit = 7) {
	$p = '';
	for($i = 1; $i <= $limit; $i++) {
	    switch (rand(1, 3)) {
		case 1:
		    $a = rand(97, 122);
		    break;
		case 2:
		    $a = rand(65, 90);
		    break;
		case 3:
		    $a = rand(48, 57);
		    break;
	    }
	    $p .= chr($a);
	}
	return $p;
    }