ホームページ >バックエンド開発 >PHPチュートリアル >PHP で数値に序数接尾辞 (st、nd、rd、th) を追加するにはどうすればよいですか?

PHP で数値に序数接尾辞 (st、nd、rd、th) を追加するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-11-27 02:12:14904ブラウズ

How Can I Add Ordinal Suffixes (st, nd, rd, th) to Numbers in PHP?

PHP での序数接尾辞付きの数値の表示

さまざまなコンテキストにおいて、数値を対応する序数接尾辞 (st、nd) 付きで表示する必要があります。 、第 、第 )。この記事では、この変換を実現するための PHP ベースのアプローチについて説明します。

ソリューションの本質は、数値の最後の桁に基づいて正しい序数接尾辞を識別することにあります。序数接尾辞の配列を定義できます:

$ends = array('th','st','nd','rd','th','th','th','th','th','th');

11 から 13 までの数値の場合、接尾辞 "th" が普遍的に使用されます。他の数値の場合、対応する接尾辞は数値の最後の桁に基づいて配列から選択されます。

if (($number %100) >= 11 && ($number%100) <= 13)
   $abbreviation = $number. 'th';
else
   $abbreviation = $number. $ends[$number % 10];

たとえば、数値 100 の場合、対応する序数接尾辞は「th」になります。同様に、数値 22 の場合、序数接尾辞は「nd」になります。

このアプローチは、簡単に使用できるように関数内にカプセル化できます。

function ordinal($number) {
    $ends = array('th','st','nd','rd','th','th','th','th','th','th');
    if ((($number % 100) >= 11) && (($number%100) <= 13))
        return $number. 'th';
    else
        return $number. $ends[$number % 10];
}

この関数は、数値を引数として指定し、対応する数値に序数接尾辞を付けて返します。たとえば、ordinal(100) は「100th」を返します。

以上がPHP で数値に序数接尾辞 (st、nd、rd、th) を追加するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。