WP_Automatic_Updater::is_allowed_dir( string $dir ): bool

Checks whether access to a given directory is allowed.

Description

This is used when detecting version control checkouts. Takes into account the PHP open_basedir restrictions, so that WordPress does not try to access directories it is not allowed to.

Parameters

$dirstringrequired
The directory to check.

Return

bool True if access to the directory is allowed, false otherwise.

Source

public function is_allowed_dir( $dir ) {	if ( is_string( $dir ) ) {	$dir = trim( $dir );	}	if ( ! is_string( $dir ) || '' === $dir ) {	_doing_it_wrong(	__METHOD__,	sprintf(	/* translators: %s: The "$dir" argument. */	__( 'The "%s" argument must be a non-empty string.' ),	'$dir'	),	'6.2.0'	);	return false;	}	$open_basedir = ini_get( 'open_basedir' );	if ( empty( $open_basedir ) ) {	return true;	}	$open_basedir_list = explode( PATH_SEPARATOR, $open_basedir );	foreach ( $open_basedir_list as $basedir ) {	if ( '' !== trim( $basedir ) && str_starts_with( $dir, $basedir ) ) {	return true;	}	}	return false; } 

Changelog

VersionDescription
6.2.0Introduced.

User Contributed Notes

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