PHP

[PHP] XML 파일 만들어 주기

dmdkd 2023. 4. 11. 21:02
test_xml.php
<?php 

header("Access-Control-Allow-Origin:*"); // 크로스 도메인 요청 허용(설정을 하지 않았을 때 CORS 이슈 발생)
header("Content-type: text/xml"); // 응답 컨텐츠 타입 설정

$menu = "메뉴 이름";

if($menu == "") die('잘못된 요청입니다.');

/*	get smenu data - end */
$menu_title = 메뉴이름;

	function addCDATA($str)
	{
		return "<![CDATA[".$str."]]>";
	}

if($dbTableName != ""){
	
	$xml_header = "<?xml version=\"1.0\" encoding=\"utf-8\" ?>".PHP_EOL;
	$xml_header .= "<rss version=\"2.0\" xmlns:dc=\"http://purl.org/dc/elements/1.1/\">".PHP_EOL;
	$xml_header .= "<channel>".PHP_EOL;
	$xml_header .= "<title>{$menu_title}</title>".PHP_EOL;
	$xml_header .= "<link>주소".$menu."</link>".PHP_EOL;
	$xml_header .= "<description>{$menu_title} 게시판</description>".PHP_EOL;
	$xml_header .= "<language>ko</language>".PHP_EOL;
	
	
	
	$xml_footer = "</channel>".PHP_EOL;
	$xml_footer .= "</rss>";
	
	
	$site_url = "주소".$menu."&mode=view";
	
	$쿼리";
	$db연결;
	
	$xml_text = "";
	
	for($i = 0; $i < count($dbData); $i++){
		
		$link = $site_url."&no=".$db연결;
	    $xml_text .= "<item>".PHP_EOL;
	    $xml_text .= "<title>".$db연결."</title>".PHP_EOL;
	    $xml_text .= "<link>".addCDATA($link)."</link>".PHP_EOL;
	    $xml_text .= "<description>".addCDATA(strcut(str_replace("&amp;nbsp;", "", $db연결), 200))."</description>".PHP_EOL;
	    $xml_text .= "<dc:date>".$db연결."</dc:date>".PHP_EOL;
	    $xml_text .= "<dc:creator>".$db연결."</dc:creator>".PHP_EOL;
	    $xml_text .= "</item>".PHP_EOL;
	}
	

	
	$xml = $xml_header.$xml_text.$xml_footer;
	
	
	echo $xml;
}else{
	die('존재하지 않는~');
}
?>

 

 

xml_parse.php
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<?php 

$xml_file = "주소"; // https ~ test_xml.php

$parse_xml = simplexml_load_file($xml_file, 'SimpleXMLElement', LIBXML_NOCDATA);
// print_r($parse_xml);
foreach($parse_xml->channel->item as $item){
	
	$memo = "".$item->description;
	var_dump($memo);
}
?>