function XMLParse($Data)
{
$rXml = xml_parser_create(); //xml 파서 생성
$arXml = array(); //파싱된 xml을 저장할 임시 배열
//대문자로 변경(default value=1, 0=disable, 1=enable)
xml_parser_set_option($rXml, XML_OPTION_CASE_FOLDING, 0);
//공백값 무시
xml_parser_set_option($rXml, XML_OPTION_SKIP_WHITE, 1);
//배열에 XML구조 저장
xml_parse_into_struct($rXml, $Data, $arXml);
xml_parser_free($rXml);
/*
echo "<pre>";
print_r($arXml);
echo "</pre>";
*/
//Charset 확인
$ary[] = "ASCII";
$ary[] = "EUC-KR";
$ary[] = "UTF-8";
$enc = mb_detect_encoding($Data, $ary);
echo "CharSet = ".$enc;
//XML 배열 생성
$NodeKey = 0;
foreach($arXml as $key => $arNode)
{
//'open', 'complete', 'close'로 구분
switch ($arNode['type'])
{
case 'open':
break;
case 'complete':
$arNode['value'] = mb_convert_encoding( $arNode['value'], "EUC-KR", $enc); //Charset 변경
$arXmlAssoc[$NodeKey][$arNode['tag']] = $arNode['value'];
break;
case 'close':
$NodeKey++;
break;
}
}
return $arXmlAssoc;
}
$handle = fopen("coupon_list.asp", "rb");
$contents = '';
while (!feof($handle)) {
$contents .= fread($handle, 8192);
}
fclose($handle);
$ResultArr= XMLParse($contents);
echo "<pre>";
print_r($ResultArr);
echo "</pre>";
echo $ResultArr[1][STATUS];
'개발도구 > PHP,ASP,JSP,SCRIPT' 카테고리의 다른 글
[script] 스스로 창 조절, selfsize, resize (0) | 2012.01.10 |
---|---|
[php] 내장 $_SERVER 명령어들 (1) | 2011.12.30 |
[파싱 xml- 주로 사용중] SimpleXMLElement Object (0) | 2011.10.20 |
[javascript] date() 포멧 형식 (0) | 2011.10.20 |
[javascript] 조회기간 (0) | 2011.10.20 |