function FileTransfer::fixRemotePath

Same name and namespace in other branches
  1. 7.x includes/filetransfer/filetransfer.inc \FileTransfer::fixRemotePath()
  2. 9 core/lib/Drupal/Core/FileTransfer/FileTransfer.php \Drupal\Core\FileTransfer\FileTransfer::fixRemotePath()
  3. 8.9.x core/lib/Drupal/Core/FileTransfer/FileTransfer.php \Drupal\Core\FileTransfer\FileTransfer::fixRemotePath()
  4. 10 core/lib/Drupal/Core/FileTransfer/FileTransfer.php \Drupal\Core\FileTransfer\FileTransfer::fixRemotePath()

Returns a modified path suitable for passing to the server.

If a path is a windows path, makes it POSIX compliant by removing the drive letter. If $this->chroot has a value and $strip_chroot is TRUE, it is stripped from the path to allow for chroot'd filetransfer systems.

Parameters

string $path: The path to modify.

bool $strip_chroot: Whether to remove the path in $this->chroot.

Return value

string The modified path.

9 calls to FileTransfer::fixRemotePath()
FileTransfer::checkPath in core/lib/Drupal/Core/FileTransfer/FileTransfer.php
Checks that the path is inside the jail and throws an exception if not.
FileTransfer::chmod in core/lib/Drupal/Core/FileTransfer/FileTransfer.php
Changes the permissions of the specified $path (file or directory).
FileTransfer::copyDirectory in core/lib/Drupal/Core/FileTransfer/FileTransfer.php
Copies a directory.
FileTransfer::copyFile in core/lib/Drupal/Core/FileTransfer/FileTransfer.php
Copies a file.
FileTransfer::createDirectory in core/lib/Drupal/Core/FileTransfer/FileTransfer.php
Creates a directory.

... See full list

File

core/lib/Drupal/Core/FileTransfer/FileTransfer.php, line 285

Class

FileTransfer
Defines the base FileTransfer class.

Namespace

Drupal\Core\FileTransfer

Code

protected final function fixRemotePath($path, $strip_chroot = TRUE) {
    $path = $this->sanitizePath($path);
    // Strip out windows drive letter if its there.
    $path = preg_replace('|^([a-z]{1}):|i', '', $path);
    if ($strip_chroot) {
        if ($this->chroot && str_starts_with($path, $this->chroot)) {
            $path = $path == $this->chroot ? '' : substr($path, strlen($this->chroot));
        }
    }
    return $path;
}

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.