ホームページ  >  記事  >  バックエンド開発  >  PHP substr_replace()

PHP substr_replace()

PHPz
PHPzオリジナル
2024-08-29 12:50:50690ブラウズ

substr_replace() は、ある文字列の一部を別の文字列に置換するために使用される、PHP の別の組み込み関数です。入力パラメータに基づいて、文字列の置換を行うインデックスを渡す必要があります。また、どのインデックスまで置換を行う必要があるかの長さも提供できます。各文字列を置換するには、関数への入力パラメータの一部として文字列の配列を提供します。

無料ソフトウェア開発コースを始めましょう

Web 開発、プログラミング言語、ソフトウェア テスト、その他

PHP substr_replace() の構文

次に構文を示します:

構文:

substr_replace($str, $replace, $st, $len)

上記の構文に示すように、この関数は 4 つのパラメーターを受け入れます。そのうち最初の 3 つの引数は必須で、最後のパラメーターはオプションです。そしてそれらは以下の通りです:

1. $str: これは必須パラメータであり、置換が必要な入力文字列です。

2. $replace: これはもう 1 つの必須パラメータであり、$str パラメータを置き換える入力文字列です。

3. $st: これも必須パラメータであり、置換を開始する必要があるインデックス位置を示します。

  • $st パラメーターが正の数の場合、置換は入力文字列の先頭から指定された位置から開始されます。
  • $st パラメーターが負の数の場合、置換は入力文字列の末尾から指定された位置から開始されます。
  • この $st パラメータが 0 の場合、置換は指定された文字列の最初の文字から行われます。

4. $len: これはオプションのパラメータで、置換する文字数を指定します。この $len パラメータが指定されていない場合、置換は $str.

の終わりで自動的に停止します。
  • このパラメータは、$len が正の場合に置換する必要がある $str の部分の長さを記述します。
  • これにより、$len が負の場合に、文字列の末尾から置換を停止する必要がある文字の合計数が得られます。
  • この $len 値が 0 の場合、挿入ではなく置換が行われます。

戻り値: 返される値は、上記のパラメーターに従って置換された後に生成される文字列です。文字列の配列の場合は、配列全体が返されます。

PHP substr_replace() の実装例

以下に挙げる例を示します:

例 #1

コード:

<?php
echo substr_replace("Example for ","substring",8);
?>

出力:

PHP substr_replace()

説明: この基本的な例では、substr_replace 関数を使用することで、最初の文字列「Example for 」を 3 番目のパラメーターで指定された正確な位置、つまり次の位置の「部分文字列」に置き換えていることがわかります。 8位。したがって、出力では 8 番目の位置の直後で、「for」という単語が「substring」という単語に置き換えられます。

例 #2

コード:

<?php
echo substr_replace("Example for","substring",-3);
?>

出力:

PHP substr_replace()

説明: この例では、位置パラメーターの -3 の機能を示しています。このマイナス記号は、関数が単語の置換を後ろから開始することを表します。したがって、これは、カウントを逆方向から開始して、3 番目の位置から最初の文字列の代わりに 2 番目のパラメータの置換を開始します。

例 #3

コード:

<?php
$replace = array("1: Try","2: Try","3: Try two");
echo implode("\n",substr_replace($replace,'Done',3,3));
?>

出力:

PHP substr_replace()

説明: この例では、配列内で宣言された複数の文字列を一度に置き換えています。 substr_replace 関数を使用して、最初の 3 つの位置で「Try」という単語を「Done」という単語に置き換えます。

例 #4

コード:

<?php
echo substr_replace("Example insert", "to ", 8, 0);
?>

出力:

PHP substr_replace()

説明: この例では、replace パラメーターが 0 に設定されているため、substr_replace を使用して挿入を実行する方法を示しています。したがって、この例では挿入のみが行われ、出力に示されているように、文字列は置換されません。 2 番目のパラメータ「to」は、指定された位置、つまり 8 番目の位置から挿入されます。

例 #5

コード:

<?php
echo substr_replace("dress", "gu", 0, 2);
?>

出力:

PHP substr_replace()

Explanation: In this example, we will specify the length parameter as 2 hence the substr_replace will start replacing the input string starting from the $start parameter which is 0 until 2. Hence from the word “dress”, the first 2 letters will be replaced by “gu” hence becoming “guess”.

Example #6

Code:

<?php
$str = 'Example:/Replace/';
echo "First: $str\n";
// The below 2 displayy the replacement of our input string with 'test'
echo substr_replace($str, 'test', 0) . "\n";
echo substr_replace($str, 'test', 0, strlen($str)) . "\n";
// Here we are inserting the word test at the starting of the string
echo substr_replace($str, 'test', 0, 0) . "\n";
// The below 2 will replace the string "Replace" from input string in $str with 'test'
echo substr_replace($str, 'test', 9, -1) . "\n";
echo substr_replace($str, 'test', -6, -1) . "\n";
// Here we are deleting "Replace" from the input string
echo substr_replace($str, '', 7, -1) . "\n";
?>

Output:

PHP substr_replace()

Explanation: In this example, we are first declaring an input string $str upon which all the operations of the function are going to be performed. In the first part of operation, we are replacing the string completely with the given string as we are specifying both starts as 0. In the second part, we are replacing the “Replace” of the input string with the ‘test’.

Example #7

Code:

<?php
$ip = array('1: PPP', '2: RRR', '3: SSS');
// A basic example where we are replacing all 3 letters of input string with TTT
echo implode('; ', substr_replace($ip, 'TTT', 3, 3))."\n";
// Another case where we are replacing the input string with the different inputs as given below
$replace = array('DDD', 'EEE', 'FFF');
echo implode('; ', substr_replace($ip, $replace, 3, 3))."\n";
// In this case we are replacing all the input characters with 3 different characters
$length = array(1, 2, 3);
echo implode('; ', substr_replace($ip, $replace, 3, $length))."\n";
?>

Output:

PHP substr_replace()

Explanation: In this example, we are showing the use of substr_replace function for replacing multiple strings as shown in input $ip.

Conclusion

Hence this function is used for replacing one string with another string based on the parameters specified. The same can also be used for inserting strings as required when the $start and $length parameter are given in 0 or negative values.

以上がPHP substr_replace()の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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