我正在考虑一个本地化的功能,我确切知道它应该做什么,和如何做到这一点,但我不能为我的生活弄清楚这是一个很好的名字。我很确定在英语中有一个体面的标准表达式,可以在这里出色地应用这个东西,我找不到它。命名功能! (因为我不能)
这个问题本身完全是语言不可知的,但这里的代码是在PHP中,因为这就是我现在正在写的东西。
所以,请为我的功能命名!
/**
* Expand a number into a format string based on its value, giving
* different format strings for 0, 1 and greater than one.
*
* example:
* myFun(count($apples), 'No apples', 'one apple', '%d apples.');
*
* @param integer $aNumber
* @param string $ifZero
* @param string $ifOne
* @param string $ifGreaterThanOne
* @return string
*/
function myFunc($aNumber, $ifZero, $ifOne, $ifGreaterThanOne)
{
assert('is_integer($aNumber) && $aNumber > -1;');
assert('is_string($ifZero);');
assert('is_string($ifOne);');
assert('is_string($ifGreaterThanOne);');
$result = null;
if ($aNumber == 0)
{
$result = strpos($ifZero, '%d') > -1
? sprintf($ifZero, $aNumber)
: $ifZero;
}
else if ($aNumber == 1)
{
$result = strpos($ifOne, '%d') > -1
? sprintf($ifOne, $aNumber)
: $ifOne;
}
else
{
$result = strpos($ifGreaterThanOne, '%d') > -1
? sprintf($ifGreaterThanOne, $aNumber)
: $ifGreaterThanOne;
}
return $result;
}
@Dennis,我觉得你更清醒,我是因为我不知道你在说什么。尽管如此,乔尔和杰夫很可能只是对程序员在程序员支持网站上提出编程问题感到高兴,**和**也收到了实际有用的评论。 – Kris