関数の概要
PHPの ucwords 関数は、文字列の中の各単語の先頭の文字を自動的に大文字に変換します。これにより、文章やタイトルのような文字列を見やすく整形することができます。特に名前や見出しの形式を統一する際に便利な関数です。
パラメータの説明
string(必須):変換対象の文字列を指定します。delimiters(任意):単語の区切り文字として扱う文字列を指定できます。指定しない場合はスペース、タブ、改行などの空白文字が区切りとみなされます。(PHP 7.4以降)
戻り値
元の文字列のうち、各単語の先頭文字が大文字に変換された新しい文字列を返します。元の文字列自体は変更されません。
使用例
基本的な使い方
<?php
$text = "hello world from php";
echo ucwords($text); // 出力: Hello World From Php
?>
この例では、文字列 “hello world from php” の各単語の最初の文字が大文字に変換されます。
改行やタブなど複数の空白がある場合
<?php
$text = "hellotworldnfrom php";
echo ucwords($text); // 出力: Hello World
// From Php
?>
タブや改行も空白文字として扱われるため、それぞれの単語の先頭が大文字になります。
区切り文字を指定する(PHP 7.4以降)
<?php
$text = "hello-world_from.php";
echo ucwords($text, "-_."); // 出力: Hello-World_From.Php
?>
この例では、ハイフン(-)、アンダースコア(_)、ドット(.)も単語の区切りとして扱われ、各区切り後の単語の先頭が大文字になります。
関連する関数
strtoupper:文字列全体を大文字に変換します。strtolower:文字列全体を小文字に変換します。ucfirst:文字列の最初の一文字だけを大文字に変換します。mb_convert_case:マルチバイト文字にも対応した文字列のケース変換が可能です。
まとめ
ucwords 関数は、文字列の各単語の先頭を大文字に変換して、読みやすい文字列に整形する際に非常に役立つ関数です。シンプルな使い方でありながら、区切り文字の指定もできるため、実務での幅広い文字列処理に対応可能です。初心者から実務者まで覚えておくと便利な文字列操作の基本関数の一つです。
