2017-04-12 9 views
0

를 사용하여 다운로드됩니다. 파일이 제대로

// Check file duration 
$file = $getID3->analyze($filepath); 
echo $file['playtime_string']; // 15:00 always good value 

것을 확인할 수있는 기능이

를 다운로드하지 않더라도,

나는 getID3()를 사용하여 시간의 파일을 얻으려고 노력하지만, 항상 좋은 값을 반환?

감사합니다.

답변

0

먼저 https를 시도합니다. 연결하려는 서버가이 서버를 지원하기를 원한다면 손실 된 바이트는 일반적으로 비정상적인 하드웨어 또는 네트워크의 라우터에 대한 MTU 설정 불량 때문에 발생합니다. http 연결은 관리 할 수있는만큼의 파일을 제공하는 데 그만큼 성능이 저하되지만, 손상되지 않은 패킷은 해독 할 수 없기 때문에 https 연결이 바이트를 잃을 때 보통 실패합니다. 게으른 IT 직원은 https의 완전한 실패를 해결하기 위해 분노하는 경향이 있지만 http를 통해 더 큰 트랜잭션 만 발생하는 누락 된 바이트와 같은 모서리 사례를 진단하고 수정하는 것이 덜 부담 스럽습니다.

https를 사용할 수없는 경우 계속해서 읽으십시오.

HTTP 서버 응답은 특정 트랜잭션의 바이트 수를 나타내는 Content-Length 헤더를 포함 할 수 있습니다. 헤더가있는 경우 wget을 직접 실행하고 -v 플래그를 추가하여 헤더를 볼 수 있어야합니다. 거기에 없다면 wget이 Length: unspecified 다음에 content-type 헤더 값을보고한다고 믿습니다. 바이트 수를 정확히 가정하면 바이트 수와 트랜잭션의 바이트 수를 비교할 수 있습니다.

접촉 할 서버가이 헤더를 제공하지 않으면 끝이 날 때까지 기본적으로 mp3를 재생할 플레이어를 찾는 것과 같이 정확한 방법이 없습니다. ID3 태그 (파일의 맨 처음 부분에 있음)에 나열된 길이와 비교하십시오. 태그에있는 시간 (두 번째 태그가있는 경우)이 두 번째 태그에 정확히 맞기 때문에 정확한 일치를 얻을 수는 없습니다. 즉 파일의 끝에서 0.5 초가 지나면 사라질 수 있으며, 알아.

+0

안녕하세요 저는 wget http exec ("wget ​​-P files/$ http_url")를 사용하고 있습니다. – Zeta

+0

상세한 답변을 주셔서 감사합니다. @LinuxDisciple, wget을 먼저 사용하면 5 분 후에 PHP 함수를 사용하여 확인하고 싶습니다. 어떤 가능성이 있니? – Zeta