文の最初の単語の最初の文字を大文字にする関数は次のとおりです。
function sentenceCase($str)
{
$cap = true;
$ret = '';
for ($x = 0; $x < strlen($str); $x++) {
$letter = substr($str, $x, 1);
if ($letter == "." || $letter == "!" || $letter == "?") {
$cap = true;
} elseif ($letter != " " && $cap == true) {
$letter = strtoupper($letter);
$cap = false;
}
$ret .= $letter;
}
return $ret;
}
「例文」を「例文」に変換します。問題は、UTF-8 文字を大文字にしないことです。この例を参照してください。
私は何を間違っていますか?