PHP:如何在第一次出现另一个字符串之前添加子字符串?

时间:2015-09-11 18:59:44

标签: php string variables substring

以这些字符串为例:

<?php

  $strOne = "Place new content here:  , but not past the commma.";
  $strTwo = "test content";

?>

因此,基于上面的字符串,如何创建一个如下所示的新字符串:

<?php
  $finalstr = "Place new content here:  test content, but not past the comma.";
?>

修改

另外,假设我无法访问$ strOne,这意味着我想通过字符串函数修改它,而不是通过连接等直接修改字符串......

4 个答案:

答案 0 :(得分:4)

您可以用逗号分割第一个字符串,然后按照您想要的方式连接。要拆分您可以使用explode方法:

$strArray = explode(',', $strOne,0);
$finalstr = $strArray[0].$strTwo.",".$strArray[1];

答案 1 :(得分:3)

尝试strpossubstr_replace

的组合
$strOne = "Place new content here:  , but not past the commma.";
$strTwo = "test content";

// find the position of comma first
$pos = strpos($strOne, ',');
if ($pos !== false)
{
     // insert the new string at the position of the comma
     $newstr = substr_replace($strOne, $strTwo, $pos, 0);
     var_dump($newstr);
}

输出:

  

string(63)“在这里放置新内容:测试内容,但不要过去   commma“。

答案 2 :(得分:-1)

用你的第一个例子:

$strTwo = "test content";
$strOne = "Place new content here: $strTwo, but not past the commma.";

更进一步:使用一个字符串数组,并创建一个返回字符串连接的函数。

答案 3 :(得分:-1)

$finalstr = str_replace(',', $strTwo.',', $strOne, 1);