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

HTML 하드코더

페이지 정보

작성자 MintState 댓글 0건 조회 11,434회 작성일 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건 3 페이지
PHP 목록
번호 제목 글쓴이 조회 날짜
115 MintState 14509 11-10
114 MintState 16162 11-10
113 MintState 17105 11-10
112 MintState 21236 11-10
111 MintState 12470 11-10
110 MintState 30551 11-10
109 MintState 15823 11-10
108 MintState 14661 11-10
107 MintState 14553 11-10
106 MintState 12594 11-10
105 MintState 20802 11-10
104 MintState 12972 11-10
103 MintState 12831 11-10
102 MintState 19984 11-10
열람중 MintState 11435 11-10
100 MintState 12526 11-10
99 MintState 20281 11-10
98 MintState 14298 11-10
97 MintState 12907 11-10
96 MintState 11381 11-10
95 MintState 13292 11-10
94 MintState 11870 11-03
93 MintState 11312 11-03
92 MintState 12518 11-03
91 MintState 15528 11-03
게시물 검색
모바일 버전으로 보기
CopyRight ©2004 - 2024, YesYo.com MintState. ™