我知道str_replace( )
将删除字符串的实例。
但是我如何只删除字符串中的一个字符串实例。
下面是URL地址的示例,我只想删除exampleDirecotry /`
的第一个实例www.example/exampleDirectory/exampleDirectory/index.php
我需要先测试一下exampleDirectory /的两个实例,如果有,请删除其中一个。
$url = www.example/exampleDirectory/exampleDirectory/index.php
if ($url == )
{
$newURL = str_replace($url, "", "exampleDirectory/");
}
答案 0 :(得分:2)
你犯了一个非常简单的错误,保罗。我也不时这样做。 适当的参数序列是:
str_replace($search, $replace, $subject)
最简单的方法:
$newURL = str_replace("/exampleDirectory/exampleDirectory",
"/exampleDirectory", $url);
答案 1 :(得分:0)
您可以通过查找第一个子字符串的偏移量和长度来完成此操作。要检查这么多,您可以使用substr_count()
:
$search = "exampleDirectory/";
// check so the string exists more than once
if (substr_count($url, $search) > 1) {
$length = strlen($search);
$offset = strpos($url, $search);
// replace the first occurance of the string
$newURL = substr_replace($url, "", $offset, $length);
}