PHP で文字列が指定された文字列で始まるかどうかを確認する方法
-
PHP で文字列が指定された文字列で始まるかどうかを確認するために
substr()
関数を使用する -
PHP で
strpos()
関数を使用して文字列が指定された文字列で始まるかどうかを確認する -
PHP で文字列が指定された文字列で始まるかどうかを確認するために
strncmp()
関数を使用する
この記事では、PHP で string
が指定された string
で始まるかどうかをチェックするメソッドを紹介します。
substr()
関数を使用するstrpos()
関数を使用するstrncmp()
関数を使用する
PHP で文字列が指定された文字列で始まるかどうかを確認するために substr()
関数を使用する
組み込み関数 substr()
を使用して、部分文字列にアクセスします。string
は入力として渡され、アクセスしたい部分文字列が返されます。この関数を使用して、string
が特定の文字列で始まるかどうかを確認できます。この関数を使用するための正しい構文は次のとおりです
substr($string, $startPosition, $lengthOfSubstring);
この関数には 3つのパラメーターがあります。パラメータの詳細は以下の通りです。
パラメーター | 説明 | |
---|---|---|
$string |
必須 | アクセスしたい部分文字列の元の文字列。 |
$startPosition |
必須 | 整変数。これは、部分文字列が開始する位置を示します。 正の場合、部分文字列は文字列の左側から、つまり最初から始まります。 負の場合、部分文字列は最後から始まります。 |
$lengthOfSubstring |
オプション | 整変数。これは、開始位置からのストリングの全長を示します。 省略された場合、開始位置から文字列の最後までの部分文字列が返されます。 これが負の場合、値に応じて末尾から文字列が削除されます。ゼロの場合、空の文字列が返されます。 |
<?php
$string = "Mr. Peter";
if(substr($string, 0, 3) === "Mr."){
echo "The string starts with the desired substring.";
}else
echo "The string does not start with the desired substring.";
?>
上記のコードでは、string
が Mr.
で始まっているかどうかを確認します。
substr($string, 0, 3)
0
は部分文字列の開始インデックスです。つまり、部分文字列は指定された文字列の最初の文字から始まります。
3
は、返される部分文字列の長さが 3 であることを意味します。
string
の先頭が Mr.
と同じであれば、The string starts with the desired substring.
と表示されます。
出力:
The string starts with the desired substring.
PHP で strpos()
関数を使用して文字列が指定された文字列で始まるかどうかを確認する
関数 strpos()
は、指定された string
内で最初に出現する部分文字列の位置を返します。これを使用して、string
が指定した文字列で始まるかどうかを確認できます。
戻り値が 0
の場合、指定された文字列が指定された部分文字列で始まることを意味します。それ以外の場合、文字列はチェックされた部分文字列で始まりません。
strpos()
は大文字と小文字を区別する関数です。この関数を使用するための正しい構文は次のとおりです。
strpos($string, $searchString, $startPosition);
3つのパラメーターがあります。パラメータの詳細は以下の通りです。
パラメータ | 説明 | |
---|---|---|
$string |
必須の | 検索したい部分文字列の文字列です。 |
$searchString |
必須の | 文字列で検索されるのは部分文字列です。 |
$startPosition |
オプション | 検索を開始する文字列内の位置です。 |
<?php
$string = "Mr. Peter";
if(strpos( $string, "Mr." ) === 0){
echo "The string starts with the desired substring.";
}else
echo "The string does not start with the desired substring.";
?>
ここでは、Mr.
の最初の出現を見つけることにより、string
が Mr.
で始まるかどうかを確認しました。
出力:
The string starts with the desired substring.
PHP で文字列が指定された文字列で始まるかどうかを確認するために strncmp()
関数を使用する
組み込み関数 strncmp()
は、指定された 2つの strings
を比較します。この関数も大文字と小文字を区別します。この関数を使用するための正しい構文は次のとおりです。
strncmp($string1, $string2, $length);
3つのパラメーターがあります。パラメータの詳細は以下の通りです。
パラメーター | 説明 | |
---|---|---|
$string1 |
必須の | 比較される最初の文字列です。 |
$string2 |
必須の | 比較する 2 番目の文字列です。 |
$length |
必須の | 比較する文字列の長さです。 |
両方の文字列が等しい場合はゼロを返します。これは大文字と小文字を区別する関数です。
<?php
$string = "Mr. Peter";
if(strncmp($string, "Mr.", 3) === 0){
echo "The string starts with the desired substring.";
}else
echo "The string does not start with the desired substring.";
?>
ここでは、2つの文字列が比較されます。比較する文字列の長さは 3 です。
出力:
The string starts with the desired substring.
strncmp
の大文字と小文字を区別しないバージョンは strncasecmp
です。大文字小文字の区別に関係なく、指定された 2つの文字列の最初の n 文字を比較します。
<?php
$string = "mr. Peter";
if(strncasecmp($string, "Mr.", 3) === 0){
echo "The string starts with the desired substring.";
}else
echo "The string does not start with the desired substring.";
?>
出力:
The string starts with the desired substring.