MediaWiki file: Defines.php
Location: includes/
Source code: master 1.40.0 1.39.4 1.35.11
Classes: Find code Find documentation

Details

Defines.php contains "a few constants that might be needed during LocalSettings.php. Note: these constants must all be resolvable at compile time by HipHop, since this file will not be executed during request startup for a compiled MediaWiki." Among the constants are version constants for the benefit of extensions; Unicode normalisation related constants; {{ll|Manual:namespace|namespace}} constants, including those that provide support for $wgResourceModules; protocol constants for wfExpandUrl; and flags for Parser::replaceLinkHolders.

Constants

  • Database related constants
  • Valid database indexes
  • Operation-based indexes
  • {{ll|Manual:Virtual namespace|Virtual namespaces}}; don't appear in the page database
  • Real namespaces
  • Cache type
  • Media types
  • Antivirus result codes, for use in $wgAntivirusSetup
  • Anti-lock flags
  • Date format selectors; used in user preference storage and by Language::date() and co.
  • RecentChange type identifiers
  • Article edit flags
  • Flags for Database::makeList()
  • {{ll|Manual:Unicode|Unicode}} and normalisation related
  • Hook support constants
  • Support for $wgResourceModules
  • Allowed values for Parser::$mOutputType
  • Flags for Parser::setFunctionHook
  • Flags for Parser::replaceLinkHolders
  • {{ll|Manual:$wgAutopromote|Autopromote}} conditions
  • Protocol constants for wfExpandUrl()
  • Content model ids, used by Content and ContentHandler.

Flags

In some cases, bitfields are used for flags. Examples are as follows:

define( 'DBO_DEBUG', 1 );
define( 'DBO_NOBUFFER', 2 );
define( 'DBO_IGNORE', 4 );
define( 'DBO_TRX', 8 ); // <translate nowrap><!--T:4--> automatically start transaction on first query</translate>
define( 'DBO_DEFAULT', 16 );
define( 'DBO_PERSISTENT', 32 );
define( 'DBO_SYSDBA', 64 ); // <translate nowrap><!--T:5--> for oracle maintenance</translate>
define( 'DBO_DDLMODE', 128 ); // <translate nowrap><!--T:6--> when using schema files: mostly for Oracle</translate>
define( 'DBO_SSL', 256 );
define( 'DBO_COMPRESS', 512 );
define( 'ALF_PRELOAD_LINKS', 1 ); // <translate nowrap><!--T:7--> unused</translate>
define( 'ALF_PRELOAD_EXISTENCE', 2 ); // <translate nowrap><!--T:8--> unused</translate>
define( 'ALF_NO_LINK_LOCK', 4 );
define( 'ALF_NO_BLOCK_LOCK', 8 );
define( 'EDIT_NEW', 1 );
define( 'EDIT_UPDATE', 2 );
define( 'EDIT_MINOR', 4 );
define( 'EDIT_SUPPRESS_RC', 8 );
define( 'EDIT_FORCE_BOT', 16 );
define( 'EDIT_DEFER_UPDATES', 32 );
define( 'EDIT_AUTOSUMMARY', 64 );

These involve the use of bitwise operators. E.g. if you want to set the EDIT_MINOR flag in $flags to true:

$flags |= EDIT_MINOR;

If you want to set both the EDIT_MINOR and EDIT_NEW flags in $flags to true, and all the other flags in $flags to false:

$flags = EDIT_MINOR | EDIT_NEW;

If you want to set the EDIT_MINOR flag in $flags to false:

$flags &= ~EDIT_MINOR;

If you want $isminor to only be true if the EDIT_MINOR flag is set to true in $flags:

$isminor = ( $flags & EDIT_MINOR );
This article is issued from Mediawiki. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.