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

HTML 하드코더

페이지 정보

작성자 MintState 댓글 0건 조회 11,453회 작성일 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건 1 페이지
PHP 목록
번호 제목 글쓴이 조회 날짜
165 MintState 5391 05-17
164 MintState 6113 05-11
163 MintState 6241 04-05
162 MintState 6390 04-03
161 MintState 7002 08-08
160 MintState 7017 02-22
159 MintState 7961 05-29
158 MintState 8238 01-18
157 MintState 8391 02-21
156 MintState 9290 12-08
155 MintState 9811 10-29
154 MintState 10267 07-31
153 MintState 10332 11-03
152 MintState 10440 11-03
151 MintState 10513 10-29
150 MintState 10596 10-29
149 MintState 10804 10-31
148 MintState 10898 10-29
147 MintState 10995 10-29
146 MintState 11094 10-29
145 MintState 11162 10-31
144 MintState 11244 11-03
143 MintState 11328 11-03
142 MintState 11402 11-10
열람중 MintState 11454 11-10
게시물 검색
모바일 버전으로 보기
CopyRight ©2004 - 2024, YesYo.com MintState. ™