It creates a prononceable password by alternating vowels and consonants. I removed j, k, w, x and y because it's tuned for Italian language that doesn't have these letters. However they can be easily added back in the array below.
/** Creates a pronounceable random password
* @param string $len, optional length (default 8)
* @retrun string the generated password
*/
function make_passwd($len=8)
{
$letter=array(
array("b","c","d","f","g","i","l","m","n","o","p","qu","r","s","t","v","z"),
array("a","e","i","o","u"));
$pass="";
$set=round(rand(0,1));
for ($i=0; $i<$len; $i++) {
$set=!$set;
$idx=floor(rand(0, count($letter[$set])-1));
$pass.=$letter[$set][$idx];
}
return $pass;
}