PEAR_PackageFile::fromArray PHP Метод

fromArray() публичный Метод

WARNING: no validation is performed, the array is assumed to be valid, always parse from xml if you want validation.
public fromArray ( array $arr ) : PEAR_PackageFileManager_v1 | PEAR_PackageFileManager_v2
$arr array
Результат PEAR_PackageFileManager_v1 | PEAR_PackageFileManager_v2
    function &fromArray($arr)
    {
        if (isset($arr['xsdversion'])) {
            $obj =& $this->factory($arr['xsdversion']);
            if ($this->_logger) {
                $obj->setLogger($this->_logger);
            }
            $obj->setConfig($this->_config);
            $obj->fromArray($arr);
            return $obj;
        }
        if (isset($arr['package']['attribs']['version'])) {
            $obj =& $this->factory($arr['package']['attribs']['version']);
        } else {
            $obj =& $this->factory('1.0');
        }
        if ($this->_logger) {
            $obj->setLogger($this->_logger);
        }
        $obj->setConfig($this->_config);
        $obj->fromArray($arr);
        return $obj;
    }

Usage Example

Пример #1
0
 /**
  * @param string Package name
  * @param string Channel name
  * @return PEAR_PackageFile_v1|PEAR_PackageFile_v2|null
  * @access private
  */
 function &_getPackage($package, $channel = 'pear.php.net')
 {
     $info = $this->_packageInfo($package, null, $channel);
     if ($info === null) {
         return $info;
     }
     $a = $this->_config;
     if (!$a) {
         $this->_config = new PEAR_Config();
         $this->_config->set('php_dir', $this->statedir);
     }
     if (!class_exists('PEAR_PackageFile')) {
         require_once 'PEAR/PackageFile.php';
     }
     $pkg = new PEAR_PackageFile($this->_config);
     $pf =& $pkg->fromArray($info);
     return $pf;
 }
All Usage Examples Of PEAR_PackageFile::fromArray