public static function changeDatabase($versionName)
 {
     $lvs = pref_getLocVersions();
     if ($versionName == $lvs[0]->name || !$versionName) {
         $dbInfo = db_splitDsn();
         $dbName = $dbInfo['database'];
     } else {
         $lv = new LocVersion();
         $lv->name = $versionName;
         $dbName = pref_getLocPrefix() . $lv->getDbName();
     }
     db_changeDatabase($dbName);
 }
<?php

require_once "../phplib/util.php";
$lvs = array_reverse(pref_getLocVersions());
if (count($lvs) < 2) {
    die("ERROR: You need at least two LOC versions in dex.conf: " . "one that indicates the version to be frozen and " . "one to indicate the next current version.\n");
}
$locDbPrefix = pref_getLocPrefix();
if (!$locDbPrefix) {
    die("ERROR: You forgot to define mysql_loc_prefix in dex.conf.\n");
}
// Assert that all the already frozen versions exist.
for ($i = 0; $i < count($lvs) - 2; $i++) {
    print "Asserting that version {$lvs[$i]->name} exists.\n";
    $dbName = $locDbPrefix . $lvs[$i]->getDbName();
    if (!databaseExists($dbName)) {
        die("ERROR: Database {$dbName} for version {$lvs[$i]->name} " . "does not exist.\n");
    }
    if (!$lvs[$i]->freezeTimestamp) {
        die("ERROR: Version {$lvs[$i]->name} should have a freeze date\n");
    }
}
// Assert that the next-to-last version does not yet exist.
$lvToFreeze = $lvs[count($lvs) - 2];
print "Asserting that version {$lvToFreeze->name} does not exist.\n";
$dbName = $locDbPrefix . $lvToFreeze->getDbName();
if (databaseExists($dbName)) {
    die("ERROR: Database {$dbName} for version {$lvToFreeze->name} " . "should not exist.\n");
}
if (!$lvToFreeze->freezeTimestamp) {
    die("ERROR: Version {$lvToFreeze->name} should have a freeze date\n");