WP_USE_EXT_MYSQL

Вот конструктор класса wpdb, найденный в исходном коде. Согласно поиску google, это было недавно переименовано из USE_EXT_MYSQL. Однако я не могу найти нигде в исходном коде, где определена константа.

function __construct( $dbuser, $dbpassword, $dbname, $dbhost ) { register_shutdown_function( array( $this, '__destruct' ) ); if ( WP_DEBUG && WP_DEBUG_DISPLAY ) $this->show_errors(); /* Use ext/mysqli if it exists and: * - WP_USE_EXT_MYSQL is defined as false, or * - We are a development version of WordPress, or * - We are running PHP 5.5 or greater, or * - ext/mysql is not loaded. */ if ( function_exists( 'mysqli_connect' ) ) { if ( defined( 'WP_USE_EXT_MYSQL' ) ) { $this->use_mysqli = ! WP_USE_EXT_MYSQL; } elseif ( version_compare( phpversion(), '5.5', '>=' ) || ! function_exists( 'mysql_connect' ) ) { $this->use_mysqli = true; } elseif ( false !== strpos( $GLOBALS['wp_version'], '-' ) ) { $this->use_mysqli = true; } } 

Может кто-нибудь, пожалуйста, объясните мне, что делает код и есть ли где-то упущение?

Благодарю.

Solutions Collecting From Web of "WP_USE_EXT_MYSQL"

Эта константа на самом деле никогда не определяется в базовом коде вообще. Вы можете определить его самостоятельно в конфигурации wp-config.php если вам нужно, но ядро ​​не нуждается в нем для нормальной работы. Он существует только для повторной настройки в запуске нетипичной настройки.

Поскольку WordPress 3.9 , WP использует MySQLi как метод соединения по умолчанию, когда:

  • Расширение MySQLi установлено на веб-сервере AND
    1. Константа WP_USE_EXT_MYSQL установлена ​​в значение false (в wp-config.php ) ИЛИ
    2. Веб-сервер выполняет PHP версии 5.5 или более поздней версии OR
    3. Внешний / mysql не загружен

** Установив константу WP_USE_EXT_MYSQL в true, WordPress использует расширение MySQL вместо расширения MySQLi.