You've already forked joomla_test
first commit
This commit is contained in:
106
libraries/joomla/registry/format/php.php
Normal file
106
libraries/joomla/registry/format/php.php
Normal file
@@ -0,0 +1,106 @@
|
||||
<?php
|
||||
/**
|
||||
* @package Joomla.Platform
|
||||
* @subpackage Registry
|
||||
*
|
||||
* @copyright Copyright (C) 2005 - 2013 Open Source Matters, Inc. All rights reserved.
|
||||
* @license GNU General Public License version 2 or later; see LICENSE
|
||||
*/
|
||||
|
||||
defined('JPATH_PLATFORM') or die;
|
||||
|
||||
/**
|
||||
* PHP class format handler for JRegistry
|
||||
*
|
||||
* @package Joomla.Platform
|
||||
* @subpackage Registry
|
||||
* @since 11.1
|
||||
*/
|
||||
class JRegistryFormatPHP extends JRegistryFormat
|
||||
{
|
||||
/**
|
||||
* Converts an object into a php class string.
|
||||
* - NOTE: Only one depth level is supported.
|
||||
*
|
||||
* @param object $object Data Source Object
|
||||
* @param array $params Parameters used by the formatter
|
||||
*
|
||||
* @return string Config class formatted string
|
||||
*
|
||||
* @since 11.1
|
||||
*/
|
||||
public function objectToString($object, $params = array())
|
||||
{
|
||||
// Build the object variables string
|
||||
$vars = '';
|
||||
foreach (get_object_vars($object) as $k => $v)
|
||||
{
|
||||
if (is_scalar($v))
|
||||
{
|
||||
$vars .= "\tpublic $" . $k . " = '" . addcslashes($v, '\\\'') . "';\n";
|
||||
}
|
||||
elseif (is_array($v) || is_object($v))
|
||||
{
|
||||
$vars .= "\tpublic $" . $k . " = " . $this->getArrayString((array) $v) . ";\n";
|
||||
}
|
||||
}
|
||||
|
||||
$str = "<?php\nclass " . $params['class'] . " {\n";
|
||||
$str .= $vars;
|
||||
$str .= "}";
|
||||
|
||||
// Use the closing tag if it not set to false in parameters.
|
||||
if (!isset($params['closingtag']) || $params['closingtag'] !== false)
|
||||
{
|
||||
$str .= "\n?>";
|
||||
}
|
||||
|
||||
return $str;
|
||||
}
|
||||
|
||||
/**
|
||||
* Parse a PHP class formatted string and convert it into an object.
|
||||
*
|
||||
* @param string $data PHP Class formatted string to convert.
|
||||
* @param array $options Options used by the formatter.
|
||||
*
|
||||
* @return object Data object.
|
||||
*
|
||||
* @since 11.1
|
||||
*/
|
||||
public function stringToObject($data, array $options = array())
|
||||
{
|
||||
return true;
|
||||
}
|
||||
|
||||
/**
|
||||
* Method to get an array as an exported string.
|
||||
*
|
||||
* @param array $a The array to get as a string.
|
||||
*
|
||||
* @return array
|
||||
*
|
||||
* @since 11.1
|
||||
*/
|
||||
protected function getArrayString($a)
|
||||
{
|
||||
$s = 'array(';
|
||||
$i = 0;
|
||||
foreach ($a as $k => $v)
|
||||
{
|
||||
$s .= ($i) ? ', ' : '';
|
||||
$s .= '"' . $k . '" => ';
|
||||
if (is_array($v) || is_object($v))
|
||||
{
|
||||
$s .= $this->getArrayString((array) $v);
|
||||
}
|
||||
else
|
||||
{
|
||||
$s .= '"' . addslashes($v) . '"';
|
||||
}
|
||||
$i++;
|
||||
}
|
||||
$s .= ')';
|
||||
return $s;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user