Jump to content

Manual:Defines.php

From mediawiki.org

Details

[edit]

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

[edit]

Flags

[edit]

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 ); // automatically start transaction on first query
define( 'DBO_DEFAULT', 16 );
define( 'DBO_PERSISTENT', 32 );
define( 'DBO_SYSDBA', 64 ); // for oracle maintenance
define( 'DBO_DDLMODE', 128 ); // when using schema files: mostly for Oracle
define( 'DBO_SSL', 256 );
define( 'DBO_COMPRESS', 512 );
define( 'ALF_PRELOAD_LINKS', 1 ); // unused
define( 'ALF_PRELOAD_EXISTENCE', 2 ); // unused
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 );