WP_Site_Health::get_test_php_sessions(): array

In this article

Tests if there’s an active PHP session that can affect loopback requests.

Return

array The test results.

Source

public function get_test_php_sessions() {
	$result = array(
		'label'       => __( 'No PHP sessions detected' ),
		'status'      => 'good',
		'badge'       => array(
			'label' => __( 'Performance' ),
			'color' => 'blue',
		),
		'description' => sprintf(
			'<p>%s</p>',
			sprintf(
				/* translators: 1: session_start(), 2: session_write_close() */
				__( 'PHP sessions created by a %1$s function call may interfere with REST API and loopback requests. An active session should be closed by %2$s before making any HTTP requests.' ),
				'<code>session_start()</code>',
				'<code>session_write_close()</code>'
			)
		),
		'test'        => 'php_sessions',
	);

	if ( function_exists( 'session_status' ) && PHP_SESSION_ACTIVE === session_status() ) {
		$result['status'] = 'critical';

		$result['label'] = __( 'An active PHP session was detected' );

		$result['description'] = sprintf(
			'<p>%s</p>',
			sprintf(
				/* translators: 1: session_start(), 2: session_write_close() */
				__( 'A PHP session was created by a %1$s function call. This interferes with REST API and loopback requests. The session should be closed by %2$s before making any HTTP requests.' ),
				'<code>session_start()</code>',
				'<code>session_write_close()</code>'
			)
		);
	}

	return $result;
}

Changelog

VersionDescription
5.5.0Introduced.

User Contributed Notes

You must log in before being able to contribute a note or feedback.