当前位置: 首页>>代码示例>>PHP>>正文


PHP PEAR_PackageFile_v1::hasDeps方法代码示例

本文整理汇总了PHP中PEAR_PackageFile_v1::hasDeps方法的典型用法代码示例。如果您正苦于以下问题:PHP PEAR_PackageFile_v1::hasDeps方法的具体用法?PHP PEAR_PackageFile_v1::hasDeps怎么用?PHP PEAR_PackageFile_v1::hasDeps使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在PEAR_PackageFile_v1的用法示例。


在下文中一共展示了PEAR_PackageFile_v1::hasDeps方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: array

 /**
  * @param array
  * @param bool
  * @access private
  */
 function _convertDependencies2_0(&$release, $internal = false)
 {
     $peardep = array('pearinstaller' => array('min' => '1.4.0b1'));
     // this is a lot safer
     $required = $optional = array();
     $release['dependencies'] = array();
     if ($this->_packagefile->hasDeps()) {
         foreach ($this->_packagefile->getDeps() as $dep) {
             if (!isset($dep['optional']) || $dep['optional'] == 'no') {
                 $required[] = $dep;
             } else {
                 $optional[] = $dep;
             }
         }
         foreach (array('required', 'optional') as $arr) {
             $deps = array();
             foreach (${$arr} as $dep) {
                 // organize deps by dependency type and name
                 if (!isset($deps[$dep['type']])) {
                     $deps[$dep['type']] = array();
                 }
                 if (isset($dep['name'])) {
                     $deps[$dep['type']][$dep['name']][] = $dep;
                 } else {
                     $deps[$dep['type']][] = $dep;
                 }
             }
             do {
                 if (isset($deps['php'])) {
                     $php = array();
                     if (count($deps['php']) > 1) {
                         $php = $this->_processPhpDeps($deps['php']);
                     } else {
                         if (!isset($deps['php'][0])) {
                             list($key, $blah) = each($deps['php']);
                             // stupid buggy versions
                             $deps['php'] = array($blah[0]);
                         }
                         $php = $this->_processDep($deps['php'][0]);
                         if (!$php) {
                             break;
                             // poor mans throw
                         }
                     }
                     $release['dependencies'][$arr]['php'] = $php;
                 }
             } while (false);
             do {
                 if (isset($deps['pkg'])) {
                     $pkg = array();
                     $pkg = $this->_processMultipleDepsName($deps['pkg']);
                     if (!$pkg) {
                         break;
                         // poor mans throw
                     }
                     $release['dependencies'][$arr]['package'] = $pkg;
                 }
             } while (false);
             do {
                 if (isset($deps['ext'])) {
                     $pkg = array();
                     $pkg = $this->_processMultipleDepsName($deps['ext']);
                     $release['dependencies'][$arr]['extension'] = $pkg;
                 }
             } while (false);
             // skip sapi - it's not supported so nobody will have used it
             // skip os - it's not supported in 1.0
         }
     }
     if (isset($release['dependencies']['required'])) {
         $release['dependencies']['required'] = array_merge($peardep, $release['dependencies']['required']);
     } else {
         $release['dependencies']['required'] = $peardep;
     }
     if (!isset($release['dependencies']['required']['php'])) {
         $release['dependencies']['required']['php'] = array('min' => '4.0.0');
     }
     $order = array();
     $bewm = $release['dependencies']['required'];
     $order['php'] = $bewm['php'];
     $order['pearinstaller'] = $bewm['pearinstaller'];
     isset($bewm['package']) ? $order['package'] = $bewm['package'] : 0;
     isset($bewm['extension']) ? $order['extension'] = $bewm['extension'] : 0;
     $release['dependencies']['required'] = $order;
 }
开发者ID:laiello,项目名称:kangle-php-mysql,代码行数:90,代码来源:v1.php


注:本文中的PEAR_PackageFile_v1::hasDeps方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。