ActivePHP 로 버 전 관리 시스템 만 들 기

3882 단어 A 로Accttiivve
PHP 를 배 울 때,우 리 는 항상 PHP 는 서버 쪽 스 크 립 트 로 클 라 이언 트 를 제어 할 수 없다 는 가르침 을 받는다.PHP 5 발표 와 함께 이 말 은 옳지 않다.이제 PHP 도 클 라 이언 트 스 크 립 트 를 쓸 수 있 기 때문이다.네,잘못 들 은 거 아니에요.PHP 로 클 라 이언 트 스 크 립 트 를 써 요.ActivePHP 의 설 치 는 PHP 를 사용 하여 클 라 이언 트 스 크 립 트 를 쓰 는 방법 을 보 여 줍 니 다.우선,windows 에 설 치 된 패 키 지 를 다운로드 한 다음 디 렉 터 리 에 압축 을 풀 어야 합 니 다.예 를 들 어 C:\Program Files\Easy PHP 5\phop.이 어 windows 명령 행 모드 에 들 어가 서,cd 는 PHP 5 디 렉 터 리 에 압축 을 풀 고 입력 하 십시오:regsvr 32 phop5activescript.dll 을 차 로 돌아 오 면 성공 적 인 힌트 를 볼 수 있 습 니 다.이것 은 ActivePHP 를 사용 할 수 있다 는 것 을 설명 합 니 다.자,다음은 간단 한 스 크 립 트 를 써 서 테스트 해 보 겠 습 니 다.여전히 전 세계 에서 통용 되 는 Hello World:P. $document->write( 'Hello World!' ); 위의 코드 를 Hello.htm 로 저장 하고 더 블 클릭 하면 아래 결 과 를 볼 수 있 습 니 다.PHP:5.0.0 OS:Windows Browser:IE 응,효과 가 좋 지만 클 라 이언 트 의 특색 이 부족 해.코드 를 수정 합 시다: $window->alert( 'Hello World!' ); 다시 실행 해 봐~느낌 있 지 않 아?우리 의 버 전 관리 시스템 아래 에서 우 리 는 고 개 를 돌려 버 전 관리 시스템 에 대해 이야기 했다.우리 가 해 야 할 버 전 관리 시스템 은 매우 간단 하 다.바로 개발 디 렉 터 리 에 있 는 파일 과 데이터 베 이 스 를 RAR 패키지 로 만들어 시간 에 따라 이름 을 짓 고 백업 디 렉 터 리 에 넣 는 것 이다.본 논문 의 주요 목적 은 ActivePHP 의 사용 을 보 여 주 는 것 이기 때문에 우 리 는 RAR 가방 에 대한 관리 와 압축 을 풀 어 기 존 데이터 의 내용 을 덮어 쓰 는 것 을 고려 하지 않 습 니 다.그러나 한 버 전 관리 시스템 에 있어 서 이 부분 은 매우 중요 하 므 로 여러분 스스로 완성 하 는 것 을 권장 합 니 다.)관련 지식?>Mysql 데이터 베 이 스 는 mysql/data 디 렉 터 리 에 파일 형식 으로 저장 되 어 있 으 며,라 이브 러 리 는 디 렉 터 리 에 대응 합 니 다.우선 PHP 가 윈도 우즈 의 다른 프로그램 을 호출 하 는 방법 을 알 아야 한다.그것 이 바로 System 명령 이다.이 명령 은 에코 와 마찬가지 로 System('command')으로 간단 합 니 다.됐 습 니 다.그리고 우 리 는 RAR 의 명령 행 사용 방법 을 알 아야 한다.이런 물건 은 당연히 도움말 문 서 를 찾 아야 한다.바로 RAR 의 설치 디 렉 터 리 에 있다.영문 더미 에서 한참 을 보 더 니 압축 할 파일 을 텍스트 파일 에 쓰 고 파일 이름 을 매개 변수 로 RAR 에 전달 하 는 방법 을 찾 았 다.명령 행 으로 쓰 면:rar.exe a pathto_save @file_list 이 파일 을 만 드 는 것 은 PHP 에 있어 서 매우 간단 합 니 다.하나의 스 트 리밍 함수 면 됩 니 다.아래 두 함 수 는 PHP 매 뉴 얼 의 User Contribute 에서 개 선 된 것 입 니 다.function R_walk($oldname, &$string) { if(is_file($oldname)) { $string .= $oldname ."rn"; } else if(is_dir ( $oldname ) ) { R_dir_walk($oldname, $string); } else { die("Cannot add file: $oldname (it's neither a file nor a directory)"); } } function R_dir_walk($oldname, &$string) { $dir = opendir( $oldname ); while( $file = readdir( $dir ) ) { if ( $file == "." $file == ".." ) { continue; } R_walk("$oldname/$file", $string); } closedir($dir); } 이 두 함수 가 있 으 면 목록 파일 을 만 드 는 것 이 쉬 워 집 니 다.다음은 실제 조작 부분의 코드 입 니 다:$php_path = 'C:/Program Files/EasyPHP1-7/home/dev/R4/'; $mysql_path = 'C:/Program Files/EasyPHP1-7/mysql/data/r4/'; $date = date( "Y_m_d_H_i_s" ); $bakeup_path = 'D:/bakeup/R4/Backup_'.$date; // copy file R_walk( $php_path , $files ); // stop mysql$window->alert('Mysql 서비스 프로 세 스 를 닫 습 니 다...');system( 'mysqladmin.exe -uroot shutdown' ); R_walk( $mysql_path , $files ); $files = str_replace( '/' , '\\' , $files ); write2_file( './info.txt' , $files ); $window->alert('압축 시작,CMD 창 을 수 동 으로 닫 지 마 십시오...');system( 'rar.exe a "' . $bakeup_path . '" @"./info.txt" ' ); $window->alert('압축 완료,Mysql 을 다시 시작 합 니 다.아래 에 팝 업 된 CMD 창 을 수 동 으로 닫 으 십시오...');/restart mysql system( 'mysqld.exe&' ); 위의 코드 는 간단 합 니 다.몇 군데 만 설명 합 니 다.Mysql 이 실 행 될 때 데이터 시트 를 잠 그 기 때문에 압축 하기 전에 서 비 스 를 중단 하고 압축 이 완 료 된 후에 시작 해 야 합 니 다.·System 명령 은 명령 이 완 료 된 후에 도 계속 아래로 실행 되 며,mysqld.exe 는 백 엔 드 서비스 로 멈 추 지 않 기 때문에 프로그램 은 여기까지 대기 상태 에 들 어가 CMD 창 을 수 동 으로 닫 으 면 됩 니 다.위 에 있 는 rar 와 my sqld 등 프로그램의 경 로 는 환경 변수 에 추가 되 기 때문에 지정 하지 않 아 도 됩 니 다.Windows XP 에서 환경 변 수 를 추가 하 는 곳 은:내 컴퓨터(오른쪽 키/속성)->고급->환경 변수->시스템 변수(Path)에 있 습 니 다.자,위의 코드 를 추가 하고 저장 판 을 다시 실행 해 보 세 요.편리 하 죠?호 호~글 은 여기까지 입 니 다.공 부 를 마 치 는 것 을 기억 하 세 요.P(출처:Viphot)

좋은 웹페이지 즐겨찾기