cvs: pear /XML_Tree Tree.php

From: Date: Thu, 16 Aug 2001 09:56:07 +0000
Subject: cvs: pear /XML_Tree Tree.php
Groups: php.pear.cvs 
Request: Send a blank email to pear-cvs+get-553@lists.php.net to get a copy of this message
sebastian Thu Aug 16 05:56:07 2001 EDT Modified files: /pear/XML_Tree Tree.php Log: Some preparations to read/write XML files. Index: pear/XML_Tree/Tree.php diff -u pear/XML_Tree/Tree.php:1.2 pear/XML_Tree/Tree.php:1.3 --- pear/XML_Tree/Tree.php:1.2 Thu Aug 16 02:56:04 2001 +++ pear/XML_Tree/Tree.php Thu Aug 16 05:56:07 2001 @@ -18,7 +18,7 @@ // | Christian Kühn <ck@chkuehn.de> | // +----------------------------------------------------------------------+ // -// $Id: Tree.php,v 1.2 2001/08/16 06:56:04 sebastian Exp $ +// $Id: Tree.php,v 1.3 2001/08/16 09:56:07 sebastian Exp $ // require_once 'XML/Tree/Node.php'; @@ -47,33 +47,48 @@ */ class XML_Tree { /** + * File Handle + * + * @var ressource + */ + var $file = NULL; + + /** + * Filename + * + * @var string + */ + var $filename = ''; + + /** * Namespace * * @var array */ - var $namespace; + var $namespace = array(); /** * Root * * @var object */ - var $root; + var $root = NULL; /** * XML Version * * @var string */ - var $version; + var $version = '1.0'; /** * Constructor * * @param string XML Version */ - function XML_Tree($version = '1.0') { - $this->version = $version; + function XML_Tree($filename = '', $version = '1.0') { + $this->filename = $filename; + $this->version = $version; } /** @@ -133,6 +148,57 @@ */ function register_name($name, $path) { $this->namespace[$name] = $path; + } + + /** + * Read XML from a file. + * + * @param string filename + */ + function read_file($filename = '') { + if ($this->_open_file($filename, 'r')) { + while ($data = @fread($this->fil, 4096)) { + // ... + } + + @fclose($this->file); + } + } + + /** + * Write XML to a file. + * + * @param string filename + */ + function write_file($filename = '') { + if ($this->_open_file($filename, 'w')) { + @fputs($this->file, $this->get()); + @fclose($this->file); + } + } + + /** + * Open a file. + * + * @param string filename + * @param string mode + * @return boolean success + * @access private + */ + function _open_file($filename, $mode) { + if (empty($filename)) { + if (!empty($this->filename)) { + $filename =& $this->filename; + } else { + return false; + } + } + + if ($this->file = @fopen($filename, $mode)) { + return true; + } else { + return false; + } } } ?>

« previous php.pear.cvs (#553) next »