Hola
javifo
No se si habrá alguna forma más sencilla, pero esto puede servirte:
Código PHP:
$pala=array('de','la','los'); // palabras que no quieres en mayúsculas
$texto='la casa de la pradera';
$palabras=explode(' ',$texto);
for($i=0;$i<count($palabras);$i++)
if($i==0 or !in_array($palabras[$i],$pala))
$palabras[$i]=ucwords($palabras[$i]);
$texto=implode(' ',$palabras);
echo $texto;
Saludos,