2012-01-24 6 views
0

원격 서버의 파일을 동기화하기 위해 PHP로 데스크톱 응용 프로그램을 만들려고합니다.
파일이 수정되었는지 어떻게 확인할 수 있습니까?원격 서버에서 파일을 동기화합니다.

처음 수정 날짜를 확인하려고했지만 파일이 서버에 새로 추가되면 원치 않는 업로드 및 다운로드가 발생할 수 있습니다.

sample.txt (수정일 : 2012-01-24 10:00:00)이라는 파일을 서버에 작성하십시오. 다음 날에 동기화하려고하면 앱에서 다운로드합니다 (수정 날짜 : 2012-01-25 11:00:00). 그런 다음 응용 프로그램에서 동일한 폴더를 검사 할 때 파일 수정 날짜가 서버와 로컬 시스템에 따라 다르므로 서버에 동일한 파일을 업로드하려고 시도합니다.

그래서 어떻게 Dropbox에서 변경된 파일을 추적 할 수 있습니까?

답변

3

PHP를 사용하여 직접 작성하려는 이유가 있습니까? (데스크탑에서는 사용하기에 최적화 된 언어가 거의 없음)? 예를 들어 unison을 사용하지 마십시오. 정확히 무엇을 요청하고 있습니까?

+0

실제로 SugarSync 용 Linux 클라이언트가 필요합니다. [씨. Mark Willis] (http://mwillis.co.uk/)가 sugarsync에 대한 [linux 클라이언트] (https://github.com/markwillis82/Sugar-Sync-Linux-Client)를 만들었습니다. 그러나 프로젝트는 비활성 상태이며 더 많은 변화가 필요합니다. 그래서 필자는 필자의 필요를 충족시키기 위해 코드 편집을 고려했다. 다른 사람들에게도 도움이 될 수 있습니다.) – RSK

0

두 파일을 비교하여 파일이 동일한 지 확인하려면 수정 된 날짜를 비교하는 것보다 조금 더 자세히 알아야합니다. 각 파일에 대해 해시를 생성하고 서로 비교하여 서로 다른지 확인해야합니다. 그렇다면 파일이 변경된 것입니다.

$file1 = md5_file('file1.php'); 
$file2 = md5_file('file2.php'); 

if ($file1 != $file2) { 
    //file has changed 
} 
관련 문제