PHP=在字符串末尾追加0
我有一个函数,它获取给定给项目的平均用户评级,并将其转换为相关类:PHP=在字符串末尾追加0,php,Php,我有一个函数,它获取给定给项目的平均用户评级,并将其转换为相关类: function get_user_rating_class($urate_ave){ if($urate_ave==='0.0'){ $user_rating_class='unrated_u'; }else{ $round_to = 0.5; $rounded = round($urate_ave / $round_to) * $round_to;
function get_user_rating_class($urate_ave){
if($urate_ave==='0.0'){
$user_rating_class='unrated_u';
}else{
$round_to = 0.5;
$rounded = round($urate_ave / $round_to) * $round_to;
$removedec = str_replace('.','',$rounded);
if(strlen($removedec)<2){$removedec.'0';}
$user_rating_class='rating_user_'+$removedec;
}
return $user_rating_class;
}
有人能告诉我我做错了什么吗。您应该使用
=
而不是
将值附加到字符串并将变量设置为该值。仅点运算符将附加值,但不会更改变量的值
$removedec .= '0';
是的,您是对的,行是错的,您忘记赋值,如下所示:
if(strlen($removedec)<2){$removedec=$removedec.'0';}
if(strlen($removedec)假设有一个整数变量,您不知道该值是多少:
$var = 0;
$str = "var is : " . ($var?$var:'0');
在字符串末尾附加值。愚蠢的错误…谢谢。我的尾随数字现在显示得很好,但我丢失了一个下划线,例如我得到的是30级而不是30级。你能看到我是如何处理这个问题的吗?没关系,我用了+而不是a。-我想这就是在js之间切换的问题请解雇提出$urate\u ave
的人。谢谢。或者至少给他买罗伯特·马丁(Robert Martin)的干净代码。你能解释一下你的意思吗,刚才在谷歌上搜索了罗伯特·马丁(Robert Martin),里面有很多。代码读起来比写出来的要多。因此,代码应该是可读的。用$urate\u ave
之类的缩写代替e> 平均用户评分
会让你的代码变得不可读。你用缩写保存的几次按键不值得你牺牲在那里的可读性。看到urate\u ave
的人很难理解它的意思。至于干净的代码:我同意,我现在倾向于使用更具描述性的变量名(很像我的函数名-get_user_rating_class)-这是我正在重新编写的一些旧代码的一部分。但是,由于不清楚它的含义-您似乎破解了我的代码。感谢链接,我将查看它。
$var = 0;
$str = "var is : " . ($var?$var:'0');