Per wikitech-l consensus: https://lists.wikimedia.org/pipermail/wikitech-l/2016-February/084821.html Notes: * Disabled CallTimePassByReference due to false positives (T127163) Change-Id: I2c8ce713ce6600a0bb7bf67537c87044c7a45c4b
30 lines
746 B
PHP
30 lines
746 B
PHP
<?php
|
|
|
|
/**
|
|
* Provides access to MediaWiki's version without requiring MediaWiki (or anything else)
|
|
* being loaded first.
|
|
*
|
|
* @author Jeroen De Dauw < jeroendedauw@gmail.com >
|
|
*/
|
|
class MediaWikiVersionFetcher {
|
|
|
|
/**
|
|
* Returns the MediaWiki version, in the format used by MediaWiki's wgVersion global.
|
|
*
|
|
* @return string
|
|
* @throws RuntimeException
|
|
*/
|
|
public function fetchVersion() {
|
|
$defaultSettings = file_get_contents( __DIR__ . '/DefaultSettings.php' );
|
|
|
|
$matches = [];
|
|
preg_match( "/wgVersion = '([0-9a-zA-Z\.\-]+)';/", $defaultSettings, $matches );
|
|
|
|
if ( count( $matches ) !== 2 ) {
|
|
throw new RuntimeException( 'Could not extract the MediaWiki version from DefaultSettings.php' );
|
|
}
|
|
|
|
return $matches[1];
|
|
}
|
|
|
|
}
|