PHP
 Computer >> コンピューター >  >> プログラミング >> PHP

PHPのstrcspn()関数の使い方を解説!構文・パラメータ・実行例

strcspn()関数は、文字列の中で指定した文字のいずれかに一致する部分が現れるまでの文字数(マスク文字に該当しない先頭部分の長さ)を返します。特定の文字が出現する前に、いくつの文字が存在しているかを調べたい場合に便利です。

構文

strcspn(str, char, begin, len)

パラメータ

  • str − 検索対象となる元の文字列を指定します。

  • char − 検索の対象となる文字(マスク文字)を指定します。

  • begin − 文字列の検索を開始する位置(省略可能)。

  • len − 検索する文字列の長さ(省略可能)。

戻り値

strcspn()関数は、指定した文字が見つかるまでに読み飛ばした文字数、つまり文字列の先頭から何文字分がマスク文字に含まれていないかを整数値で返します。

以下に具体的な使用例を示します。

例1

<?php
   echo strcspn("demo text","m");
?>

上記のコードでは、文字列「demo text」の中で「m」が最初に出現するまでの文字数を取得しています。「d」「e」の2文字が「m」より前にあるため、結果は以下のようになります。

出力

2

続いて、別の例を見てみましょう。

例2

<?php
   echo strcspn("Demo text!!","e",0,4); 
?>

この例では、開始位置を「0」、検索する長さを「4」と指定しています。つまり「Demo」の範囲内で「e」が最初に出現するまでの文字数を求めます。「D」の次に「e」があるため、結果は以下の出力になります。

出力

1

このようにstrcspn()関数を使うことで、入力値のバリデーションや特定文字の位置確認など、文字列操作を効率的に行うことができます。

  1. PHPのquoted_printable_decode()関数とは?使い方とサンプルコードを解説

    PHPのquoted_printable_decode()関数は、quoted-printable形式でエンコードされた文字列を、8ビット文字列にデコードするために使用されます。メール本文などで使われるquoted-printableエンコーディングを元に戻したい場合に便利な関数です。 構文 quoted_printable_decode(str) パラメータ str − デコード対象となる入力文字列を指定します。 戻り値 quoted_printable_decode()関数は、デコード後の8ビットASCII文字列を返します。 使用例 以下は、quoted_printable_dec

  2. PHPのnl_langinfo()関数の使い方をわかりやすく解説

    PHPのnl_langinfo()関数は、現在のロケール(言語・地域設定)に関する情報を取得するための関数です。曜日名や月名、通貨記号、数値の書式など、ロケール固有のさまざまな情報を要素単位で取り出すことができます。通常、setlocale()でロケールを設定した後に使用します。 注意: この関数はWindows環境では動作しません。LinuxなどのUNIX系プラットフォームでのみ利用可能です。 構文 nl_langinfo(ele) パラメータ ele − 取得したい情報の要素を指定します。指定できる主な要素は以下の通りです。 時刻・カレンダー関連 ABDAY_(1-7) − 番号で指