假设我有这样的字符串:
$str1 = '7.5.4';
$str2 = '7.19.41';
如何从最后一个点开始删除每个字符串的最后几个字符,以便我的字符串变为:
$str1 = '7.5';
$str2 = '7.19';
谢谢
假设我有这样的字符串:
$str1 = '7.5.4';
$str2 = '7.19.41';
如何从最后一个点开始删除每个字符串的最后几个字符,以便我的字符串变为:
$str1 = '7.5';
$str2 = '7.19';
谢谢
尝试这个:
$str1 = substr( $str1, 0, strrpos( $str1, '.' ) );
更新
在您的特定情况下,您也可以简单地使用floatval
$str1 = '7.5.4';
$str2 = '7.19.41';
echo floatval($str1) . "\n";
echo floatval($str2) . "\n";
请注意,如果终止零计数,您需要将其与number_format
or结合使用sprintf
$str1 = '7.50.4';
$str2 = '7.10.41';
echo number_format(floatval($str1), 2, '.', '') . "\n";
echo sprintf('%0.2f', floatval($str2));
如果是这种情况,您并没有真正比最初的解决方案获得任何好处,而且您还与特定的精度相关联('7.190.41'
仍然会 yield 7.19
,'7.191'
也会 yield 7.19
)。但是,如果您不关心终止零,那就是胜利。