71 lines
1.6 KiB
PHP
71 lines
1.6 KiB
PHP
<?php
|
|
|
|
/**
|
|
* @file classes/db/XMLDAO.php
|
|
*
|
|
* Copyright (c) 2014-2021 Simon Fraser University
|
|
* Copyright (c) 2000-2021 John Willinsky
|
|
* Distributed under the GNU GPL v3. For full terms see the file docs/COPYING.
|
|
*
|
|
* @class XMLDAO
|
|
*
|
|
* @ingroup db
|
|
*
|
|
* @brief Operations for retrieving and modifying objects from an XML data source.
|
|
*/
|
|
|
|
namespace PKP\db;
|
|
|
|
use PKP\xml\PKPXMLParser;
|
|
|
|
class XMLDAO
|
|
{
|
|
/**
|
|
* Parse an XML file and return data in an object.
|
|
*
|
|
* @see PKPXMLParser::parse()
|
|
*
|
|
* @param string $file
|
|
*/
|
|
public function parse($file)
|
|
{
|
|
$parser = new PKPXMLParser();
|
|
return $parser->parse($file);
|
|
}
|
|
|
|
/**
|
|
* Parse an XML file with the specified handler and return data in an object.
|
|
*
|
|
* @see PKPXMLParser::parse()
|
|
*
|
|
* @param string $file
|
|
* @param \PKP\xml\XMLParserDOMHandler $handler reference to the handler to use with the parser.
|
|
*/
|
|
public function parseWithHandler($file, $handler)
|
|
{
|
|
$parser = new PKPXMLParser();
|
|
$parser->setHandler($handler);
|
|
return $parser->parse($file);
|
|
}
|
|
|
|
/**
|
|
* Parse an XML file and return data in an array.
|
|
*
|
|
* @see PKPXMLParser::parseStruct()
|
|
*
|
|
* @param string $file
|
|
* @param array $tagsToMatch
|
|
*
|
|
* @return array|null
|
|
*/
|
|
public function parseStruct($file, $tagsToMatch = [])
|
|
{
|
|
$parser = new PKPXMLParser();
|
|
return $parser->parseStruct($file, $tagsToMatch);
|
|
}
|
|
}
|
|
|
|
if (!PKP_STRICT_MODE) {
|
|
class_alias('\PKP\db\XMLDAO', '\XMLDAO');
|
|
}
|