MediaWiki REL1_34
PHPVersionCheck Class Reference

Check PHP Version, as well as for composer dependencies in entry points, and display something vaguely comprehensible in the event of a totally unrecoverable error. More...

Public Member Functions

 checkExtensionExistence ()
 Displays an error, if a PHP extension does not exist.
 
 checkRequiredPHPVersion ()
 Displays an error, if the installed PHP version does not meet the minimum requirement.
 
 checkVendorExistence ()
 Displays an error, if the vendor/autoload.php file could not be found.
 
 getIndexErrorOutput ( $title, $longHtml, $shortText)
 Returns an error page, which is suitable for output to the end user via a web browser.
 
 getPHPInfo ()
 Return the version of the installed PHP implementation.
 
 outputHTMLHeader ()
 Output headers that prevents error pages to be cached.
 
 setFormat ( $format)
 Set the format used for errors.
 
 setScriptPath ( $scriptPath)
 Set the script path used for images in HTML-formatted errors.
 
 triggerError ( $title, $shortText, $longText, $longHtml)
 Display something vaguely comprehensible in the event of a totally unrecoverable error.
 

Public Attributes

 $format = 'text'
 
 $functionsExtensionsMapping
 
 $mwVersion = '1.34'
 
 $scriptPath = '/'
 

Detailed Description

Check PHP Version, as well as for composer dependencies in entry points, and display something vaguely comprehensible in the event of a totally unrecoverable error.

Note
Since we can't rely on anything external, the minimum PHP versions and MW current version are hardcoded in this class.
This class uses setter methods instead of a constructor so that it can be compatible with PHP 4, PHP 5 and PHP 7 (without warnings).

Definition at line 35 of file PHPVersionCheck.php.

Member Function Documentation

◆ checkExtensionExistence()

PHPVersionCheck::checkExtensionExistence ( )

Displays an error, if a PHP extension does not exist.

Definition at line 174 of file PHPVersionCheck.php.

References $ext, and triggerError().

◆ checkRequiredPHPVersion()

PHPVersionCheck::checkRequiredPHPVersion ( )

Displays an error, if the installed PHP version does not meet the minimum requirement.

Definition at line 106 of file PHPVersionCheck.php.

References getPHPInfo(), and triggerError().

◆ checkVendorExistence()

PHPVersionCheck::checkVendorExistence ( )

Displays an error, if the vendor/autoload.php file could not be found.

Definition at line 148 of file PHPVersionCheck.php.

References triggerError().

◆ getIndexErrorOutput()

PHPVersionCheck::getIndexErrorOutput (   $title,
  $longHtml,
  $shortText 
)

Returns an error page, which is suitable for output to the end user via a web browser.

Parameters
string$title
string$longHtml
string$shortText
Returns
string

Definition at line 230 of file PHPVersionCheck.php.

References $title.

Referenced by triggerError().

◆ getPHPInfo()

PHPVersionCheck::getPHPInfo ( )

Return the version of the installed PHP implementation.

TODO: Deprecate/remove this workaround now that HHVM isn't supported.

Returns
array An array of information about the PHP implementation, containing:
  • 'version': The version of the PHP implementation (specific to the implementation, not the version of the implemented PHP version)
  • 'implementation': The name of the implementation used
  • 'vendor': The development group, vendor or developer of the implementation.
  • 'upstreamSupported': The minimum version of the implementation supported by the named vendor.
  • 'minSupported': The minimum version supported by MediaWiki
  • 'upgradeURL': The URL to the website of the implementation that contains upgrade/installation instructions.

Definition at line 92 of file PHPVersionCheck.php.

Referenced by checkRequiredPHPVersion().

◆ outputHTMLHeader()

PHPVersionCheck::outputHTMLHeader ( )

Output headers that prevents error pages to be cached.

Definition at line 213 of file PHPVersionCheck.php.

Referenced by triggerError().

◆ setFormat()

PHPVersionCheck::setFormat (   $format)

Set the format used for errors.

Parameters
string$formatOne of "text" or "html"

Definition at line 64 of file PHPVersionCheck.php.

References $format.

◆ setScriptPath()

PHPVersionCheck::setScriptPath (   $scriptPath)

Set the script path used for images in HTML-formatted errors.

Parameters
string$scriptPath

Definition at line 73 of file PHPVersionCheck.php.

References $scriptPath.

◆ triggerError()

PHPVersionCheck::triggerError (   $title,
  $shortText,
  $longText,
  $longHtml 
)

Display something vaguely comprehensible in the event of a totally unrecoverable error.

Does not assume access to anything; no globals, no autoloader, no database, no localisation. Safe for PHP4 (and putting this here means that WebStart.php and GlobalSettings.php no longer need to be).

Calling this function kills execution immediately.

Parameters
string$titleHTML code to be put within an

tag @param string $shortText @param string $longText @param string $longHtml

Definition at line 296 of file PHPVersionCheck.php.

References $title, getIndexErrorOutput(), and outputHTMLHeader().

Referenced by checkExtensionExistence(), checkRequiredPHPVersion(), and checkVendorExistence().

Member Data Documentation

◆ $format

PHPVersionCheck::$format = 'text'

Definition at line 52 of file PHPVersionCheck.php.

Referenced by setFormat().

◆ $functionsExtensionsMapping

PHPVersionCheck::$functionsExtensionsMapping
Initial value:
= array(
'mb_substr' => 'mbstring',
'xml_parser_create' => 'xml',
'ctype_digit' => 'ctype',
'json_decode' => 'json',
'iconv' => 'iconv',
'mime_content_type' => 'fileinfo',
)

Definition at line 40 of file PHPVersionCheck.php.

◆ $mwVersion

PHPVersionCheck::$mwVersion = '1.34'

Definition at line 37 of file PHPVersionCheck.php.

◆ $scriptPath

string PHPVersionCheck::$scriptPath = '/'

Definition at line 57 of file PHPVersionCheck.php.

Referenced by setScriptPath().


The documentation for this class was generated from the following file: