2017-12-22 18 views
0

나는 수학 문제에 갇혀있다. 업로드가 완료 될 때까지 시간을 계산하는 방법을 알 수 없습니다.PHP/수학/계산/유닉스 타임 스탬프/업로드가 완료 될 때까지 시간을 계산하는 방법

나는 다음 알고 물건 :

  • 실제 업로드 시간
  • 파일 크기의

    • 시작 시간
    • 파일 크기의 많은 덩어리가 allready 업로드하는 방법을
    • ...

    처음 나는 처음부터 실망스러운 순간부터 초를 파헤 치려고 시작했을 것이라고 생각했다.

    time()-$timestampstart; // seconds? 
    

    지금은 호 훨씬 초 업로드 시작 경과 알고는 ...

    는 내가 어떻게 든 어떻게 든 계산 내가 파일 크기에이 패키지를 얻을 수있는 방법을 자주 알것하는 파일 크기와 uploadedchunksize를 나눌 수 있다고 생각 그것은

    내 상태 fiule은 다음과 같습니다

    <?php 
    $statFilesize = 6399866206; 
    $statuploaded = 5662310400; 
    $timestampstart = 1513935180; 
    ?> 
    

    그리고 내가

    기압 붙어 내 test.php에이 파일을 포함 617,451,515,
    <?php 
        include './status2'; 
    
        $timestampnow = time()-$timestampstart; 
        echo $timestampnow.'<br>'; 
    
        $test = $statuploaded/$statFilesize; 
    
        echo $test; 
    ?> 
    

    그래서 내가해야 할 :)

    죄송합니다를 위해 트링하고 무엇을 설명 할 수있는 희망을 내 나쁜 영어 당신은 자바 스크립트 코드 내부

    var current_speed = uploaded_size/(now - elaped_time); 
    
    var remaining size = file_size - uploaded_size; 
    
    var remaining time = remaining_size/current_speed; 
    

    실행에 이런 식으로 작업을 수행 할 수 있습니다

  • +0

    그래서와 실제로 어떤 문제가 있는지 당신은 일을? – RiggsFolly

    +0

    내 사고 방식이 잘못된 것 같습니다. 나는 "시작 시간, 업로드 시간, 파일 크기, allready 업로드 된 실제 파일 크기"와 같은 구성 요소를 보았습니다. 파일 크기가/acutalfilesize * 초입니까? –

    답변

    1

    setInterval(function(){ 
    
    },500) 
    

    500 밀리 초마다 통계를 새로 고칩니다.

    +0

    이것에 대한 설명은 다음과 같습니다. 현재 속도를 알지 못합니다. PHP 스크립트는 YouTube API에 업로드되므로 php_upload가 아닙니다.uploaded_size - - 을 통과 초 - 첫 번째 문은 속도를 계산하는 allready 내 코드의 크기 –

    +0

    을 업로드 는 난 단지 을 알고있다. 한 번 더보세요 –

    +0

    오, 제 .. 당신에게 블라인드 감사합니다. 나는 그것을 시험 할 것이다. 그리고 끝내게되면 해설해라. .. 고맙다! –

    0

    이제 내 코드를 테스트하는 것은 Shrida Sharma의 답변과 같습니다.

    <?php 
        $statFilesize = 6594313534; 
        $statuploaded = 3628072960; 
        $timestampstart = 1513939710; 
    
        $current_speed = 5662310400/(time()-$timestampstart); 
    
        $remain_size = $statFilesize - $statuploaded; 
    
        $remain_time = $remain_size/$current_speed; 
    
        echo '$current_speed '.$current_speed.'<br>'; 
        echo '$remain_size '.$remain_size.'<br>'; 
        echo '$remain_time '.$remain_time; 
    ?> 
    

    출력 :

    $current_speed 2878652.9740722 
    $remain_size 2966240574 
    $remain_time 1030.4265921307 
    

    십초 이상 :

    $current_speed 2864092.2610015 
    $remain_size 2966240574 
    $remain_time 1035.6651614857 
    

    그래서 시간이 .. 카운트 업되어 내가 뭔가 잘못하고있는 중이 야 보인다

    +0

    죄송합니다. 내 잘못 : 코드가 맞습니다. :)이 코드는 testet withouth new uploadfilesize = 고정 변수입니다. 아직 업로드되지 않았으므로 uploadedfilesize를 큰 값으로 변경하면 카운트 다운이됩니다. 내게 이것을 함축하십시오 :) 고맙습니다. –