我目前正在研究一個小型在線遊戲的成就係統。該成果的實體主要有4個屬性:PHP:檢查一個整數是否在一定的時間間隔
- ID
- earnedBy
- earnedOn
- 進步
最後一個應該是一個百分比,意爲在0和100之間的數字。爲了確保數據庫中沒有保存大於100或小於0的數字,我的setter方法看起來如下(我正在使用Symfony2/Doctrine ORM):
public function setProgress($progress)
{
$this->progress = max(min($progress, 100), 0);
return $this;
}
這裏最重要的行是max(min($progress, 100), 0)
。
它的工作原理完全罰款,我只是想問問,如果在PHP另一個內置功能正是這樣做的事情,如果我在做什麼是好的(關於良好發展的風格)
我不認爲有您所需要的任何這樣的內置功能,以及你現在正在做的是非常好.. –
看起來不錯。我可能會將它分成兩行而不是嵌套它,以使max()min()函數調用更具可讀性。 –
@tereško,背景很重要。鑑於他正在使用Symfony2框架,可能會有更適合他的問題的解決方案。 – Gerry