我有这段代码循环 1 到 99 并且是一个公式。
function getExperienceByLevel ($maxLevel)
{
$levels = array ();
$current = 0;
for ($i = 1; $i <= $maxLevel; $i++)
{
$levels[$i - 1] = floor ($current / 4);
$current += floor($i+300*pow(2, ($i/9.75)));
}
return $levels;
}
首先你像这样启动它,$aLevels = getExperienceByLevel(99);
然后看看你需要多少经验才能升级6
你这样做,echo $aLevels[5];
因为它是一个数组。
现在我正在尝试反向操作。通过经验获得等级。
function getLevelByExp($exp)
{
$myLevel = 0;
$aLevels = getExperienceByLevel(99);
for ($i = 1; $i < 100; $i++)
{
if ($exp > $aLevels[$i-1])
{
return $myLevel;
}
}
}
当被调用getLevelByExp(1124);
或内部的任何数字时,它似乎返回零。但是,当您将回声放在该语句中时,它似乎起作用了。
Like 而不是return $myLevel
do echo "You are up to level $i<br />";
,它将一直上升到您获得 EXP 的当前级别。
但是仍然..当我想简单地返回一个数字时不起作用。