PHP | 文字列から単語の数を取得する方法

PHP,PHP 文字列

PHPで文字列から単語の数を取得する方法とサンプルコードを紹介しています。

確認環境

エックスサーバー
PHP 8.016

str_word_count()で単語の数を取得する

str_word_count()関数は文字列から単語の数を取得する事が可能です。

例えば、以下のような英文に登場する単語の数を数えます。

$str = 'This is a pen.';
echo str_word_count($str);

// 4

日本語などが含まれる言語ではうまく機能しません。

$str = 'これはペンです。';
echo str_word_count($str);

// 4

第二引数には、オプションとして戻り値の型を指定する事が可能です。

第二引数説明
0(デフォルト)単語の数を返します
1文字列の単語を含む配列を返します
2第3引数に指定したキーが文字列で見つかった配列を返します
str_word_count()の第二引数

str_word_count()関数で第二引数に「1」を指定した場合は単語を値にした配列を返します。

$str = 'This is a pen.';
print_r(str_word_count($str, 1));

// Array ( [0] => This [1] => is [2] => a [3] => pen )

str_word_count()関数で第二引数に「2」を指定する場合は第三引数に対象の文字または文字列を指定します。

$str = 'This is a pen.';
print_r(str_word_count($str, 2, 'is'));

// Array ( [0] => This [5] => is [8] => a [10] => pen )

PHP,PHP 文字列

Posted by Yousuke.U