WP_Filesystem_Direct::move( string $source, string $destination, bool $overwrite = false )

Moves a file.

Parameters

$source

(string) (Required) Path to the source file.

$destination

(string) (Required) Path to the destination file.

$overwrite

(bool) (Optional) Whether to overwrite the destination file if it exists.

Default value: false

Return

(bool) True on success, false on failure.

Source

File: wp-admin/includes/class-wp-filesystem-direct.php

public function move( $source, $destination, $overwrite = false ) {
		if ( ! $overwrite && $this->exists( $destination ) ) {
			return false;
		}

		// Try using rename first. if that fails (for example, source is read only) try copy.
		if ( @rename( $source, $destination ) ) {
			return true;
		}

		if ( $this->copy( $source, $destination, $overwrite ) && $this->exists( $destination ) ) {
			$this->delete( $source );

			return true;
		} else {
			return false;
		}
	}

Changelog

Version Description
2.5.0 Introduced.

© 2003–2021 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/classes/wp_filesystem_direct/move