홈으로 | 무료회원가입 | 아이디/비번찾기
추천음악방송
php - >xml 생성하는 class
10년 전
---------------------------<XmlWriter.php>----------------------------------

<?php

// Simon Willison, 16th April 2003
// Based on Lars Marius Garshol\'s Python XMLWriter class
// See http://www.xml.com/pub/a/2003/04/09/py-xml.html

class XmlWriter {
    var $xml;
    var $indent;
    var $stack = array();
    function XmlWriter($indent = \'  \') {
        $this->indent = $indent;
        $this->xml = \'<?xml version="1.0" encoding="utf-8"?>\'."\\n";
    }
    function _indent() {
        for ($i = 0, $j = count($this->stack); $i < $j; $i++) {
            $this->xml .= $this->indent;
        }
    }
    function push($element, $attributes = array()) {
        $this->_indent();
        $this->xml .= \'<\'.$element;
        foreach ($attributes as $key => $value) {
            $this->xml .= \' \'.$key.\'="\'.htmlentities($value).\'"\';
        }
        $this->xml .= ">\\n";
        $this->stack[] = $element;
    }
    function element($element, $content, $attributes = array()) {
        $this->_indent();
        $this->xml .= \'<\'.$element;
        foreach ($attributes as $key => $value) {
            $this->xml .= \' \'.$key.\'="\'.htmlentities($value).\'"\';
        }
        $this->xml .= \'>\'.htmlentities($content).\'</\'.$element.\'>\'."\\n";
    }
    function emptyelement($element, $attributes = array()) {
        $this->_indent();
        $this->xml .= \'<\'.$element;
        foreach ($attributes as $key => $value) {
            $this->xml .= \' \'.$key.\'="\'.htmlentities($value).\'"\';
        }
        $this->xml .= " />\\n";
    }
    function pop() {
        $element = array_pop($this->stack);
        $this->_indent();
        $this->xml .= "</$element>\\n";
    }
    function getXml() {
        return $this->xml;
    }
}

/* Test

$xml = new XmlWriter();
$array = array(
    array(\'monkey\', \'banana\', \'Jim\'),
    array(\'hamster\', \'apples\', \'Kola\'),
    array(\'turtle\', \'beans\', \'Berty\'),
);

$xml->push(\'zoo\');
foreach ($array as $animal) {
    $xml->push(\'animal\', array(\'species\' => $animal[0]));
    $xml->element(\'name\', $animal[2]);
    $xml->element(\'food\', $animal[1]);
    $xml->pop();
}
$xml->pop();

print $xml->getXml();

*/
?>  
-------------------------예문---------------------
<?php header(\'Content-Type: text/xml\'); ?><?phpinclude(\'XmlWriter.php\');$xml = new XmlWriter();$array = array(    array(\'monkey\', \'banana\', \'Jim\'),    array(\'hamster\', \'apples\', \'Kola\'),    array(\'turtle\', \'beans\', \'Berty\'),);
$xml->push(\'zoo\');foreach ($array as $animal) {    $xml->push(\'animal\', array(\'species\' => $animal[0]));    $xml->element(\'name\', $animal[2]);    $xml->element(\'food\', $animal[1]);    $xml->pop();}$xml->pop();
print $xml->getXml();
?>
------------------------------결과---------------------------
<?xml version="1.0" encoding="utf-8"?>
<zoo>
  <animal species="monkey">
    <name>Jim</name>
    <food>banana</food>
  </animal>
  <animal species="hamster">
    <name>Kola</name>
    <food>apples</food>
  </animal>
  <animal species="turtle">
    <name>Berty</name>
    <food>beans</food>
  </animal>
</zoo>

추천추천 : 577 추천 목록
번호 제목
3,030
 제이쿼리 기본 명령어
3,029
 웹페이지 가로 모드세로 모드 인식하기
3,028
 모바일 웹 화면 강제 회전(가로모드 고정)
3,027
 [HTML5]에서 frameset 대체 방법과 iframe 속성
3,026
 HTML <Audio> 사용법
3,025
 윈도우10 시스템파일 손상 (초간단 오류 복구방법!!)
3,024
 PHP 파일 존재 여부 파악하기(로컬 파일 존재 및 원격지 파일 존재)
3,023
 [CSS] 박스 세로 가운데 중앙 정렬 6가지
3,022
 CSS Layout 수평 & 수직 정렬
3,021
 여러 도메인들 간 쿠키 공유하기
3,020
 태그 사이에 있는 텍스트를 추출
3,019
 [JQuery] textbox focus on off일때 숫자 콤마 보여주기
3,018
 쿠키 생성,가져오기,삭제
3,017
 사용자 함수 모음
3,016
 마우스,키보드 제한 ( 오른쪽클릭,드래그,영역선택등..)
3,015
 [HTML5] <video> - DOM으로 제어하기
3,014
 HTML5 video 태그에서 영상 좌우반전
3,013
 PHP - 특정 태그 및 문자열 추출, 제거
3,012
 [PHP] define과 defined의 차이
3,011
 우클릭 완벽차단 스크립트
3,010
 iframe 높이 100% 맞추기
3,009
 curl 함수를 이용한 HTTP REFERER 변경
3,008
 윈도우10 시스템 파일 및 Dism 검사
3,007
 텍스트 줄바꿈, 글자자르기 CSS
3,006
 jQuery Mobile에서 유용한 코드 10가지.
목록
뮤직트로트 부산광역시 부산진구 가야동 ㅣ 개인정보취급방침
Copyright (C) musictrot All rights reserved.