我有这段 php 代码:
$skill_amount = round(pow($rarity,1.25));
应该注意的是,$rarity 是从查询中派生的。
我正在输入像 0,2,4,8,16,32,64 这样的值。
99% 的时间它都在工作,但在少数情况下,我的用户报告了巨大的价值,例如:
13771, 77936
这可能是什么原因造成的?
我有这段 php 代码:
$skill_amount = round(pow($rarity,1.25));
应该注意的是,$rarity 是从查询中派生的。
我正在输入像 0,2,4,8,16,32,64 这样的值。
99% 的时间它都在工作,但在少数情况下,我的用户报告了巨大的价值,例如:
13771, 77936
这可能是什么原因造成的?
"What could possibly be causing this?"
的大值或意外值$rarity
。
如果您可以检查 $rarity 的所有可能值,您应该这样做。否则,您可以进行一些基本的调试。
if ($skill_amount > some sane value) {
// log $skill_amount & $rarity to a file or email
// maybe also some other investigative values, like stuff that assisted the derivation of $rarity
}
在这个脚本中没有发现任何问题,所以我同意需要对 $rarity 进行健全性检查。
<?php // RAY_temp_amy_neville.php
error_reporting(E_ALL);
echo '<pre>';
$range = range(1, 4096);
foreach ($range as $rarity)
{
$skill_amount = round(pow($rarity,1.25));
$out[$rarity] = $skill_amount;
}
print_r($out);