| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364 | <?php/** * * Cube Framework $Id$ vLIXPoaVMg2aIqmzTgPyiLeJsbhF0GO+uddsjGtVr9Q= * * @link        http://codecu.be/framework * @copyright   Copyright (c) 2015 CodeCube SRL * @license     http://codecu.be/framework/license Commercial License * * @version     1.4 *//** * config xml generator class */namespace Cube\Config;class Xml extends AbstractConfig{    /**     *     * convert input into \SimpleXMLElement, then process the xml into an array     *     * @param mixed $data the input variable, it can be a path to an xml file, a string in xml format or an object of type \SimpleXMLElement     *     * @return $this     */    public function addData($data)    {        $xml  = $this->_processInput($data);        $data = json_decode(json_encode((array)$xml), true);        $this->_data = array_replace_recursive(            array_merge_recursive($this->_data, $data), $data);        return $this;    }    /**     *     * process input     *     * @param $input     *     * @return null|\SimpleXMLElement     */    protected function _processInput($input)    {        $xml = null;        if ($input instanceof \SimpleXMLElement) {            $xml = $input;        } else if (file_exists($input)) {            $xml = simplexml_load_file($input);        } else {            $xml = simplexml_load_string($input);        }        return $xml;    }}
 |