本文整理汇总了PHP中OA::stripVersion方法的典型用法代码示例。如果您正苦于以下问题:PHP OA::stripVersion方法的具体用法?PHP OA::stripVersion怎么用?PHP OA::stripVersion使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类OA
的用法示例。
在下文中一共展示了OA::stripVersion方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: getConfigVersion
/**
* Returns phpAdsNew style config version.
*
* The OpenX version "number" is converted to an int using the following table:
*
* 'beta-rc' => 0.1
* 'beta' => 0.2
* 'rc' => 0.3
* '' => 0.4
*
* i.e.
* v0.3.29-beta-rc10 becomes:
* 0 * 1000 +
* 3 * 100 +
* 29 * 1 + // Cannot exceed 100 patch releases!
* 0.1 +
* 10 / 1000 =
* -------------
* 3293.1
*/
function getConfigVersion($version)
{
$a = array('dev' => -0.001, 'beta-rc' => 0.1, 'beta' => 0.2, 'rc' => 0.3, 'stable' => 0.4);
$version = OA::stripVersion($version, array('dev', 'stable'));
if (preg_match('/^v/', $version)) {
$v = preg_split('/[.-]/', substr($version, 1));
} else {
$v = preg_split('/[.-]/', $version);
}
if (count($v) < 3) {
return false;
}
// Prepare value from the first 3 items
$returnValue = $v[0] * 1000 + $v[1] * 100 + $v[2];
// How many items were there?
if (count($v) == 5) {
// Check that it is a beta-rc release
if (!$v[3] == 'beta' || !preg_match('/^rc(\\d+)/', $v[4], $aMatches)) {
return false;
}
// Add the beta-rc
$returnValue += $a['beta-rc'] + $aMatches[1] / 1000;
return $returnValue;
} else {
if (count($v) == 4) {
// Check that it is a tag or rc numer
if (isset($a[$v[3]])) {
// Add the beta
$returnValue += $a[$v[3]];
return $returnValue;
} else {
if (preg_match('/^rc(\\d+)/', $v[3], $aMatches)) {
// Add the rc
$returnValue += $a['rc'] + $aMatches[1] / 1000;
return $returnValue;
}
}
return false;
}
}
// Stable release
$returnValue += $a['stable'];
return $returnValue;
}
示例2: getUpgradePackageList
/**
* walk an array of version information to build a list of required upgrades
* they must be in the RIGHT order!!!
* hence the weird sorting of keys etc..
*/
function getUpgradePackageList($verPrev, $aVersions = null)
{
$verPrev = OA::stripVersion($verPrev);
$aFiles = array();
if (is_array($aVersions)) {
ksort($aVersions, SORT_NUMERIC);
foreach ($aVersions as $release => $aMajor) {
ksort($aMajor, SORT_NUMERIC);
foreach ($aMajor as $major => $aMinor) {
ksort($aMinor, SORT_NUMERIC);
foreach ($aMinor as $minor => $aStatus) {
if (array_key_exists('-beta-rc', $aStatus)) {
$aKeys = array_keys($aStatus['-beta-rc']);
sort($aKeys, SORT_NUMERIC);
foreach ($aKeys as $k => $v) {
$version = $release . '.' . $major . '.' . $minor . '-beta-rc' . $v;
if (version_compare($verPrev, $version) < 0) {
$aFiles[] = $aStatus['-beta-rc'][$v]['file'];
}
}
}
if (array_key_exists('-beta', $aStatus)) {
$aBeta = $aStatus['-beta'];
foreach ($aBeta as $key => $file) {
$version = $release . '.' . $major . '.' . $minor . '-beta';
if (version_compare($verPrev, $version) < 0) {
$aFiles[] = $file;
}
}
}
if (array_key_exists('-dev', $aStatus)) {
$aDev = $aStatus['-dev'];
foreach ($aDev as $key => $file) {
$version = $release . '.' . $major . '.' . $minor . '-dev';
if (version_compare($verPrev, $version) < 0) {
$aFiles[] = $file;
}
}
}
if (array_key_exists('-rc', $aStatus)) {
$aKeys = array_keys($aStatus['-rc']);
sort($aKeys, SORT_NUMERIC);
foreach ($aKeys as $k => $v) {
$version = $release . '.' . $major . '.' . $minor . '-rc' . $v;
if (version_compare($verPrev, $version) < 0) {
$aFiles[] = $aStatus['-rc'][$v]['file'];
}
}
}
if (array_key_exists('-RC', $aStatus)) {
$aKeys = array_keys($aStatus['-RC']);
sort($aKeys, SORT_NUMERIC);
foreach ($aKeys as $k => $v) {
$version = $release . '.' . $major . '.' . $minor . '-RC' . $v;
if (version_compare($verPrev, $version) < 0) {
$aFiles[] = $aStatus['-RC'][$v]['file'];
}
}
}
if (array_key_exists('file', $aStatus)) {
$version = $release . '.' . $major . '.' . $minor;
if (version_compare($verPrev, $version) < 0) {
$aFiles[] = $aStatus['file'];
}
}
}
}
}
}
return $aFiles;
}