WP_CLI

FileCache::ensure_dir_exists()protectedWP-CLI 1.0

Ensure directory exists

Method of the class: FileCache{}

No Hooks.

Return

true|false.

Usage

// protected - for code of main (parent) or child class
$result = $this->ensure_dir_exists( $dir );
$dir(string) (required)
directory

FileCache::ensure_dir_exists() code WP-CLI 2.8.0-alpha

protected function ensure_dir_exists( $dir ) {
	if ( ! is_dir( $dir ) ) {
		// Disable the cache if a null device like /dev/null is being used.
		if ( preg_match( '{(^|[\\\\/])(\$null|nul|NUL|/dev/null)([\\\\/]|$)}', $dir ) ) {
			return false;
		}

		if ( ! @mkdir( $dir, 0777, true ) ) {
			$message = "Failed to create directory '{$dir}'";
			$error   = error_get_last();
			if ( is_array( $error ) && array_key_exists( 'message', $error ) ) {
				$message .= ": {$error['message']}";
			}
			WP_CLI::warning( "{$message}." );
			return false;
		}
	}

	return true;
}