我用了一段时间来抓取某些东西的图像,但是因为我刚刚尝试再次使用它,它给了我这个错误:
警告:str_repeat():第121行的C:\ inetpub \ wwwroot \ resource_update.php中第二个参数必须大于或等于0
这是它所指的功能,所以如果有人能提供帮助那就太棒了:
function consoleLogProgressBar($current, $size, $unit = "kb")
{
$length = (int)(($current/$size)*100);
$str = sprintf("\r[%-100s] %3d%% (%2d/%2d%s)", str_repeat("=", $length).($length==100?"":">"), $length, ($current/($unit=="kb"?1024:1)), $size/($unit=="kb"?1024:1), " ".$unit);
consoleLog($str, true);
}
答案 0 :(得分:0)
听起来像$length
正在返回一个负数?您可以按以下方式进行故障排除:
$length = (int)(($current/$size)*100);
var_dump($length);
exit;
如果确实如此,那么你可以将它包装在abs()
函数中,该函数将始终返回绝对值:
$length = (int) abs(($current/$size)*100);
当然,这是一个丑陋的黑客,并没有解决真正的问题。无论哪种方式,第一步都是确定为什么$length
不符合您的预期。