2016-04-20 60 views
2

我用這一段時間回來搶從一些圖片,但因爲我再次使用它只是嘗試它給我這個錯誤:警告:str_repeat():第二個參數必須是大於或等於0

Warning: str_repeat(): Second argument has to be greater than or equal to 0 in C:\inetpub\wwwroot\resource_update.php on line 121

這是什麼它指的是,如果任何人能幫助這將是偉大的功能:

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); 
} 
+1

你傳遞給'consoleLogProgressBar()'什麼參數? – AbraCadaver

回答

0

聽起來$length返回一個負數?你可以解決如下:

$length = (int)(($current/$size)*100); 
var_dump($length); 
exit; 

如果這是事實的話,那麼你可以在abs()函數總是會返回一個絕對值,它包:

$length = (int) abs(($current/$size)*100); 

當然,這是一個醜陋的黑客,並沒有解決真正的問題。無論哪種方式,第一步是確定爲什麼$length不是你所期望的。

相關問題