各単語の先頭文字を大文字にする関数として、ucwords() が用意されています。 ただし、ucwords() は先頭文字以外を小文字に変換するということはしないので、各単語の先頭文字だけを大文字にした文字列を作成するには、以下のように strtolower() と組み合わせて使用する必要があります。
ucwords()
strtolower()
$s = 'aaa bBb CcC dDD'; $uc = ucwords(strtolower($s)); // 'Aaa Bbb Ccc Ddd'