Manual:Defines.php

==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; 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
 * 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
 * Unicode and normalisation related
 * Hook support constants
 * Support for $wgResourceModules
 * Allowed values for Parser::$mOutputType
 * Flags for Parser::setFunctionHook
 * Flags for Parser::replaceLinkHolders
 * Autopromote conditions
 * Protocol constants for wfExpandUrl
 * Content model ids, used by Content and ContentHandler.
 * Content formats, used by Content and ContentHandler.

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

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

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:

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

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