wp_is_ini_value_changeable()WP 4.6.0

Determines whether a PHP ini value is changeable at runtime.

Хуков нет.

Возвращает

true|false. True if the value is changeable at runtime. False otherwise.

Использование

wp_is_ini_value_changeable( $setting );
$setting(строка) (обязательный)
The name of the ini setting to check.

Список изменений

С версии 4.6.0 Введена.

Код wp_is_ini_value_changeable() WP 6.5.2

function wp_is_ini_value_changeable( $setting ) {
	static $ini_all;

	if ( ! isset( $ini_all ) ) {
		$ini_all = false;
		// Sometimes `ini_get_all()` is disabled via the `disable_functions` option for "security purposes".
		if ( function_exists( 'ini_get_all' ) ) {
			$ini_all = ini_get_all();
		}
	}

	// Bit operator to workaround https://bugs.php.net/bug.php?id=44936 which changes access level to 63 in PHP 5.2.6 - 5.2.17.
	if ( isset( $ini_all[ $setting ]['access'] )
		&& ( INI_ALL === ( $ini_all[ $setting ]['access'] & 7 ) || INI_USER === ( $ini_all[ $setting ]['access'] & 7 ) )
	) {
		return true;
	}

	// If we were unable to retrieve the details, fail gracefully to assume it's changeable.
	if ( ! is_array( $ini_all ) ) {
		return true;
	}

	return false;
}