我想从我网站上的页面中删除Search -
。以下是我的代码示例:
输入:
$search = "Search - echelon";
$trim = "Search - ";
$result = ltrim($search,$trim);
echo $result;
输出:
lon
欲望输出:
echelon
我怎么能这样做,为什么ltrim会在上面的例子中修剪掉更多?谢谢!
答案 0 :(得分:6)
RTM。第二个参数被视为要修剪的一组字符。
在这种情况下:
S - in the list, trim it
e - in the list, trim it
a - in the list, trim it
r - in the list, trim it
c - in the list, trim it
h - in the list, trim it
_ - (space) in the list, trim it
- - in the list, trim it
_ - (space) in the list, trim it
e - in the list, trim it
c - in the list, trim it
h - in the list, trim it
e - in the list, trim it
l - NOT in the list, stop!
lon is left
你的意思是?
$result = substr($search,strlen($trim));
答案 1 :(得分:3)
ltrim ( string $str [, string $character_mask ] )
- 从字符串的开头删除空格(或其他字符)。 character_mask - 要删除的字符
str_replace
,
$result = str_replace($trim,"",$search);
答案 2 :(得分:1)
答案 3 :(得分:1)
trim
修剪您提供的任何字符。它单独查看每个字符并将其修剪掉,它不会搜索整个字符串。如果你正在寻找从开头删除一个字符串,当且仅当它存在时,请执行以下操作:
$trimmed = preg_replace('/^Search - /', '', $search);
答案 4 :(得分:0)
// trim — Strip whitespace (or other characters) from the beginning and end of a string
// Example
$ageTypes = ' Adult, Child, Kids, ';
// Output, removes empty string from both ends
// Adult, Child, Kids,
// Rtrim - Remove characters from the right side of a string:
// Example
$ageTypes = 'Adult, Child, Kids';
echo rtrim($ageTypes, ',');
// Output
// Ltrim - Remove characters from the left side of a string:
// Example
$ageTypes = ',Adult, Child, Kids, ';
echo ltrim($ageTypes, ',');
// Adult, Child, Kids,
答案 5 :(得分:0)
这有点晚了。但是,除了所有借口。 我发现PHP trim经常删除过多。我觉得使用起来不可靠。这只是一个PHP漏洞,无人看管。
因此,我正在使用:
function phptrim($str, $strip = ' '){
while($str != '' && substr($str, 0, 1) == $strip) $str = substr_replace($str, '', 0, 1);
while($str != '' && substr($str, -1) == $strip) $str = substr_replace($str, '', -1);
return $str;
}
请注意,如果您在循环中使用它,这会占用一些CPU资源。因此,请尽量避免使用它。但是,如果您需要它。在这里。