Title: Curl::test
Published: March 29, 2023
Last modified: November 8, 2023

---

# Curl::test( $capabilities = array() ): bool

## In this article

 * [Description](https://developer.wordpress.org/reference/classes/wporg-requests-transport-curl/test/?output_format=md#description)
 * [Parameters](https://developer.wordpress.org/reference/classes/wporg-requests-transport-curl/test/?output_format=md#parameters)
 * [Return](https://developer.wordpress.org/reference/classes/wporg-requests-transport-curl/test/?output_format=md#return)
 * [Source](https://developer.wordpress.org/reference/classes/wporg-requests-transport-curl/test/?output_format=md#source)

[ Back to top](https://developer.wordpress.org/reference/classes/wporg-requests-transport-curl/test/?output_format=md#wp--skip-link--target)

Self-test whether the transport can be used.

## 󠀁[Description](https://developer.wordpress.org/reference/classes/wporg-requests-transport-curl/test/?output_format=md#description)󠁿

The available capabilities to test for can be found in \WpOrg\Requests\Capability.

## 󠀁[Parameters](https://developer.wordpress.org/reference/classes/wporg-requests-transport-curl/test/?output_format=md#parameters)󠁿

bool> $capabilities Optional. Associative array of capabilities to test against,
i.e. `[<capability> => true]`.

## 󠀁[Return](https://developer.wordpress.org/reference/classes/wporg-requests-transport-curl/test/?output_format=md#return)󠁿

 bool Whether the transport can be used.

## 󠀁[Source](https://developer.wordpress.org/reference/classes/wporg-requests-transport-curl/test/?output_format=md#source)󠁿

    ```php
     * @param array<string, bool> $capabilities Optional. Associative array of capabilities to test against, i.e. `['<capability>' => true]`.
     * @return bool Whether the transport can be used.
     */
    public static function test($capabilities = []) {
    	if (!function_exists('curl_init') || !function_exists('curl_exec')) {
    		return false;
    	}

    	// If needed, check that our installed curl version supports SSL
    	if (isset($capabilities[Capability::SSL]) && $capabilities[Capability::SSL]) {
    		$curl_version = curl_version();
    		if (!(CURL_VERSION_SSL & $curl_version['features'])) {
    			return false;
    		}
    	}
    ```

[View all references](https://developer.wordpress.org/reference/files/wp-includes/requests/src/transport/curl.php/)
[View on Trac](https://core.trac.wordpress.org/browser/tags/7.1/src/wp-includes/Requests/src/Transport/Curl.php#L601)
[View on GitHub](https://github.com/WordPress/wordpress-develop/blob/7.1/src/wp-includes/Requests/src/Transport/Curl.php#L601-L615)

## User Contributed Notes

You must [log in](https://login.wordpress.org/?redirect_to=https%3A%2F%2Fdeveloper.wordpress.org%2Freference%2Fclasses%2Fwporg-requests-transport-curl%2Ftest%2F)
before being able to contribute a note or feedback.