Checks if the passed extension or function are available.
Make the check for available PHP modules into a simple boolean operator for a cleaner test runner.
$extension_namestringoptional
Default:null
$function_namestringoptional
Default:null
$constant_namestringoptional
Default:null
$class_namestringoptional
Default:null
private function test_php_extension_availability( $extension_name = null, $function_name = null, $constant_name = null, $class_name = null ) {
// If no extension or function is passed, claim to fail testing, as we have nothing to test against.
if ( ! $extension_name && ! $function_name && ! $constant_name && ! $class_name ) {
return false;
}
if ( $extension_name && ! extension_loaded( $extension_name ) ) {
return false;
}
if ( $function_name && ! function_exists( $function_name ) ) {
return false;
}
if ( $constant_name && ! defined( $constant_name ) ) {
return false;
}
if ( $class_name && ! class_exists( $class_name ) ) {
return false;
}
return true;
}
© 2003–2024 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/classes/wp_site_health/test_php_extension_availability