YesYo.com MintState Forums
뒤로    YesYo.com MintState BBS > Tech > PHP
검색
멤버이름    오토
비밀번호 
 

HTML 하드코더

페이지 정보

작성자 MintState 댓글 0건 조회 11,491회 작성일 08-11-10 13:21

본문

HTML 하드코더

대부분의 웹프로그래머들이 그렇듯이...
디자이너에게서 받은 나모나 드림위버의 결과물을 보고 있노라면...
한숨부터 나오실 겁니다...

문제 되는 부분은 다음과 같은 경우겠죠...



요런건 다음에 나올 테이블 태그가 뒤에 붙어 있어서 웬만해선 찾기가 쉽지 않습니다.
두번째 경우는 다음과 같은 경우 입니다.



물론 이런 유형의 코드를 좋아 하시는 분들도 계실지 모르지만...
제 경우에는 이런 코드를 모조리 아래와 같이 바꾸어 작업에 들어 갑니다.


아래 소스는 위와 같이 바꾸어 주는 소스 입니다.
그 외의 작업으로는 폼태그의 위치와 입력폼의 위치를 주석으로 표시해 주고...
table이나 form과 같은 태그를 대문자로 변환 할 수 있습니다.

/*

제작자이름 : navyism
제작자메일 : navyism@chol.com
관련사이트 : http://navyism.com

HTML HARD CODER

*/

$dir              = "test";       // 원본 디렉토리 
$file              = "test.htm";       // 원본 파일이름 
$dir2              = "test";       // 결과 디렉토리 
$file2              = "test.txt";       // 결과 파일이름 
$newln              = "\r\n";       // 줄바꿈 문자 
$tab              = "\t";              // 탭구분 문자 
$replace       = false;       // 대문자로 변환 (true | false) 

$data=file("$dir/$file"); 

for($i=0;$i<sizeof($data);$i++) 
{ 
$data2[]=trim($data[$i]); 
} 

$data=explode($newln,implode($newln,$data2)); 
unset($data2); 

for($i=0;$i<sizeof($data);$i++) 
{ 
$data2[]=eregi_replace("(<table|</table>|<form|</form>)",$newln."\\1",$data[$i]); 
} 

$data=explode($newln,implode($newln,$data2)); 
unset($data2); 

for($i=0;$i<sizeof($data);$i++) 
{ 
$data2[]=eregi_replace("(</table>|</form>)","\\1".$newln,$data[$i]); 
} 

$data=explode($newln,implode($newln,$data2)); 
unset($data2); 

for($i=0;$i<sizeof($data);$i++) 
{ 
       if(!trim($data[$i])) 
       { 
       continue; 
       } 

$data2[]=$data[$i]; 
} 

$data=explode($newln,implode($newln,$data2)); 
unset($data2); 

for($i=0;$i<sizeof($data);$i++) 
{ 
       if(!$replace) 
       { 
       $data[$i]=eregi_replace("<input ","<!--입력폼--><input ",$data[$i]); 
       $data[$i]=eregi_replace("<form ","<!--폼의 시작-->$newln<form ",$data[$i]); 
       $data[$i]=eregi_replace("</form","<!--폼의 끝-->$newln</form",$data[$i]); 
       } 
       else 
       { 
       $data[$i]=eregi_replace("<input ","<!--입력폼--><INPUT ",$data[$i]); 
       $data[$i]=eregi_replace("<form ","<!--폼의 시작-->$newln<FORM ",$data[$i]); 
       $data[$i]=eregi_replace("</form","<!--폼의 끝-->$newln</FORM",$data[$i]); 
       $data[$i]=eregi_replace("<table","<TABLE",$data[$i]); 
       $data[$i]=eregi_replace("</table","</TABLE",$data[$i]); 
       $data[$i]=eregi_replace("<tr","<TR",$data[$i]); 
       $data[$i]=eregi_replace("</tr","</TR",$data[$i]); 
       $data[$i]=eregi_replace("<td","<TD",$data[$i]); 
       $data[$i]=eregi_replace("</td","</TD",$data[$i]); 
       } 
} 

$data=explode($newln,implode($newln,$data)); 

$tab_count=0; 
for($i=0;$i<sizeof($data);$i++) 
{ 
       if(eregi("<table",$data[$i])) 
       { 
       $tab_count++; 
       } 

unset($tab_print); 

       for($j=1;$j<$tab_count;$j++) 
       { 
       $tab_print.=$tab; 
       } 

       if(eregi("</table>",$data[$i])) 
       { 
       $tab_count--; 
       } 

$data2[]=$tab_print.$data[$i]; 
} 

$fp=fopen("$dir2/$file2",w); 
fwrite($fp,implode($newln,$data2)); 
fclose($fp); 


첨부파일을 exe 파일(pre-HardCoder)로 하드코팅하는 소스입니다.
첨부 파일
파일 종류: zip naPreHardCoder.zip (2.4M, 56 views)

댓글목록

등록된 댓글이 없습니다.

Total 165건 5 페이지
PHP 목록
번호 제목 글쓴이 조회 날짜
열람중 MintState 11492 11-10
64 MintState 20050 11-10
63 MintState 12879 11-10
62 MintState 13025 11-10
61 MintState 20852 11-10
60 MintState 12647 11-10
59 MintState 14613 11-10
58 MintState 14716 11-10
57 MintState 15891 11-10
56 MintState 30640 11-10
55 MintState 12521 11-10
54 MintState 21286 11-10
53 MintState 17151 11-10
52 MintState 16230 11-10
51 MintState 14572 11-10
50 MintState 14590 11-10
49 MintState 16255 11-10
48 MintState 13926 11-17
47 MintState 17345 11-17
46 MintState 12342 11-17
45 MintState 22415 11-17
44 MintState 17067 11-17
43 MintState 15451 02-17
42 MintState 16469 02-17
41 MintState 16144 02-23
게시물 검색
모바일 버전으로 보기
CopyRight ©2004 - 2024, YesYo.com MintState. ™