PHP修剪不当剥离

时间:2019-02-02 19:29:21

标签: php replace

使用以下代码在应该输出“ vegas”的情况下如何停止PHP输出“ vega”?

<?php
$file = 'vegas.css';
echo rtrim($file,'.css');
//Wrong/current echo/output: vega
//Desired echo: vegas
?>

4 个答案:

答案 0 :(得分:4)

明白的第二个参数等RTRIM装饰功能是一组字符,所以你试图剥离的字符的每一个实例sc.从字符串的末尾,而不是字符的有序序列。因此,它也从s中删除了结尾的vegas

从php.net文档中:

  

character_mask

     

还可以通过character_mask参数指定要删除的字符。只需列出要删除的所有字符。使用..您可以指定字符范围。

更好地测试您的字符串的末尾是.css,然后再对最后4个字符进行子字符串

答案 1 :(得分:3)

您可以使用basename()功能:

<?php
$file = 'vegas.css';
$file = basename($file, ".css");
echo $file;

//返回

vegas

答案 2 :(得分:1)

可以使用str_replace,以取代空值的文本:

$file = 'vegas.css';
echo str_replace(".css", "", $file);

答案 3 :(得分:0)

您也可以尝试以下操作:

echo basename('file.csv','。csv');