substr_replace() 是 PHP 的另一个内置函数,用于将一个字符串的一部分替换为另一个字符串。基于需要传递必须完成字符串替换的索引的输入参数。我们还可以提供需要完成替换的索引的长度。要替换每个字符串,我们可以提供一个字符串数组作为函数输入参数的一部分。
开始您的免费软件开发课程
网络开发、编程语言、软件测试及其他
以下是语法:
语法:
substr_replace($str, $replace, $st, $len)
如上面的语法所示,该函数接受 4 个参数,其中前 3 个参数是必需的,最后一个参数是可选的。它们如下:
1。 $str: 这是强制参数,这是必须进行替换的输入字符串。
2。 $replace: 这是另一个强制参数,这是替换 $str 参数的输入字符串。
3。 $st: 这也是必填参数,表示需要开始替换的索引位置。
4。 $len: 这是一个可选参数,它为我们提供了应该替换的字符数。如果没有给出这个 $len 参数,那么替换将自动停止在 $str 的末尾。
返回值:返回值是按照上述参数替换后生成的字符串。如果情况是字符串数组,则返回整个数组。
以下是提到的示例:
代码:
<?php echo substr_replace("Example for ","substring",8); ?>
输出:
解释: 在这个基本示例中,我们可以看到,通过使用 substr_replace 函数,我们将第 3 个参数给出的确切位置处的第一个字符串“Example for”替换为“substring”,即第8个位置。因此,在第 8 个位置之后的输出中,单词“for”被“substring”单词替换。
代码:
<?php echo substr_replace("Example for","substring",-3); ?>
输出:
说明:在此示例中,我们展示了位置参数中 -3 的功能。这个减号表示函数应该从后面开始替换单词。因此,这开始替换第二个参数来代替从第三个位置开始的第一个字符串,从向后开始计数。
代码:
<?php $replace = array("1: Try","2: Try","3: Try two"); echo implode("\n",substr_replace($replace,'Done',3,3)); ?>
输出:
说明:在此示例中,我们一次替换数组中声明的多个字符串。使用 substr_replace 函数,我们将前 3 个位置中的单词“Try”替换为单词“Done”。
代码:
<?php echo substr_replace("Example insert", "to ", 8, 0); ?>
输出:
说明:在这个例子中,我们展示了如何使用 substr_replace 来执行插入,因为替换参数设置为 0。因此,在这个例子中,只发生插入,并且会出现没有替换输出中所示的字符串。第二个参数“to”将插入到指定的位置,即从第 8 个位置开始。
代码:
<?php echo substr_replace("dress", "gu", 0, 2); ?>
输出:
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”.
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:
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’.
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:
Explanation: In this example, we are showing the use of substr_replace function for replacing multiple strings as shown in input $ip.
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中文网其他相关文章!