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

HTML 하드코더

페이지 정보

작성자 MintState 댓글 0건 조회 11,448회 작성일 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건 6 페이지
PHP 목록
번호 제목 글쓴이 조회 날짜
40 MintState 12276 11-12
39 MintState 12268 10-29
38 MintState 12267 11-03
37 MintState 12195 10-29
36 MintState 12076 10-28
35 MintState 11976 11-03
34 MintState 11884 11-03
33 MintState 11805 10-31
32 MintState 11745 10-29
31 MintState 11740 07-27
30 MintState 11666 02-23
29 MintState 11649 10-29
28 MintState 11550 10-31
27 MintState 11548 10-29
26 MintState 11527 10-31
열람중 MintState 11449 11-10
24 MintState 11388 11-10
23 MintState 11321 11-03
22 MintState 11236 11-03
21 MintState 11154 10-31
20 MintState 11087 10-29
19 MintState 10989 10-29
18 MintState 10887 10-29
17 MintState 10796 10-31
16 MintState 10588 10-29
게시물 검색
모바일 버전으로 보기
CopyRight ©2004 - 2024, YesYo.com MintState. ™