DB 혹은 받은 데이터를 XML 로 파싱하는 기초적 방법
[code]
<?
$goodCnt = count($good_name2); // 이전에 불러온것을 갯수로 반환
$url = "경로";
$zip= ".zip";
$xml_dir = "경로"; // 신규생성할 디렉토리 변수
$xml_path = "경로"; // 신규생성할 xml 파일
$laguage_ = "euc-kr";
@mkdir($xml_dir, 0707);
@chmod($xml_dir, 0707);
$xml_file = fopen($xml_path, "w");
$data[lauage] = "<?xml version=\"1.0\" encoding=\"{$laguage_}\" ?>";
$data[xml_start] = "<data>";
$data[xml_end] = "</data>";
$get_xml = "";
$get_xml .= $data[lauage];
$get_xml .= $data[xml_start];
for($j = 0; $j < $goodCnt; $j++){ // 실제 데이터만 뺑뺑이 돌림
$get_xml .= "<link>";
$get_xml .= "<file>$url$실데이터[$j]$zip</file>";
$get_xml .= "</link>";
}
$get_xml .= $data[xml_end];
if(!fwrite($xml_file, $get_xml)) echo "에러출력";
fclose($xml_file);
?>
[/code]
음.. 우선 실 사용코드라 정리가 안된점 이리 양해 부탁드립니다.
간단하게 설명을 드리자면, XML 을 꼭 XML 에 적어야 한다는 생각을 버리시면 쉽게 해결 됩니다.
XML 자체 선언문이 <? XML version=1.0 중얼중얼 ?> 로 시작을 하기때문에
이부분이 중첩이 되면 안됩니다. 때문에 절때 이 구문은 for 문이나 while 문안에 돌려서는 안됩니다.
또 중요한부분이 fwrite 하실때도 a+나 a로 주시면 안됩니다. 당연하겠지만 파일을 시작할때마다 이어서 쓰게되면
XML 선언문이 중첩이 되서 안불러와지니까요.
뭐 그정도만 지켜도 잘 사용할 수 있을거 같네요.
뭐 그누보드에 맞추어 적진 않았지만 그누보드도 돌릴때 기본형식을 이렇게 잡고 돌리심 됩니다.
댓글 2개
거들어 보자면,, 최 상단(<? 바로 아래)에 아래의 코드를 추가
header('Content-Type: text/html; charset=utf-8'); // 본인에 맞게
header('Content-type: application/xml');
header("Pragma: no-cache");
header("Cache-Control: no-cache,must-revalidate");
필요에 따라서 iconv("EUC-KR", "UTF-8",$필드) 사용
게시판 목록
그누4 팁자료실
나누면 즐거움이 커집니다.
| 번호 | 제목 | 글쓴이 | 날짜 | 조회 |
|---|---|---|---|---|
| 3309 | 3년 전 | 1803 | ||
| 3308 | 11년 전 | 2091 | ||
| 3307 |
uPAmJ903
|
6년 전 | 4750 | |
| 3306 |
바른사나이
|
6년 전 | 3273 | |
| 3305 | 6년 전 | 12306 | ||
| 3304 | 7년 전 | 3703 | ||
| 3303 | 7년 전 | 3742 | ||
| 3302 |
지리산초보
|
7년 전 | 13596 | |
| 3301 |
sozet
|
8년 전 | 4902 | |
| 3300 |
sozet
|
8년 전 | 5972 | |
| 3299 |
sozet
|
8년 전 | 10862 | |
| 3298 | 8년 전 | 4015 | ||
| 3297 |
또치하우스
|
8년 전 | 4442 | |
| 3296 | 8년 전 | 11971 | ||
| 3295 |
또치하우스
|
8년 전 | 14985 | |
| 3294 | 8년 전 | 6024 | ||
| 3293 | 8년 전 | 5587 | ||
| 3292 |
|
9년 전 | 5316 | |
| 3291 | 9년 전 | 13677 | ||
| 3290 | 9년 전 | 5052 |
댓글 작성
댓글을 작성하시려면 로그인이 필요합니다.
로그인하기