rtrim与php中的下划线

Din*_*nga -1 php trim

我排队的是'Delux Room_room'.我希望得到'Delux Room'作为结果.我试过以下代码.

以下代码给出以下结果.

echo $row.'<br/>';
echo rtrim($row, 'room') .'<br/>'; 
echo rtrim($row, '_room') .'<br/>'; 
Run Code Online (Sandbox Code Playgroud)

结果; -

Delux Room_room
Delux Room_
Delux R
Run Code Online (Sandbox Code Playgroud)

但我想要Delux Room.请帮我.

lon*_*day 6

echo rtrim($row, '_room') .'<br/>'; 
Run Code Online (Sandbox Code Playgroud)

上面写着"从字符串的结尾,直到你得到一个不是删除字符_,r,om." 这显然不是你的意思.从PHP手册:

$charlist您还可以通过charlist参数指定要删除的字符.只需列出要删除的所有字符.使用..,您可以指定一系列字符.

您提供了一个字符列表,而不是您要删除的字符串.

您可能应该使用substr:

echo substr($row, 0, -5); // remove the last 5 characers
Run Code Online (Sandbox Code Playgroud)

另一种解决方案是str_replace用来替换不需要的子串:

echo str_replace($row, '_room', ''); // replace "_room" with an empty string
Run Code Online (Sandbox Code Playgroud)

请注意,这不如方法精确substr.