function FTPExtension::chmodJailed

FTPExtension::chmodJailed($path, $mode, $recursive)

Changes the permissions of the file / directory specified in $path

Parameters

string $path: Path to change permissions of.

int $mode: The new file permission mode to be passed to chmod().

bool $recursive: Pass TRUE to recursively chmod the entire directory specified in $path.

Overrides ChmodInterface::chmodJailed

See also

http://php.net/chmod

File

core/lib/Drupal/Core/FileTransfer/FTPExtension.php, line 104

Class

FTPExtension
Defines a file transfer class using the PHP FTP extension.

Namespace

Drupal\Core\FileTransfer

Code

function chmodJailed($path, $mode, $recursive) {
  if (!ftp_chmod($this->connection, $mode, $path)) {
    throw new FileTransferException("Unable to set permissions on %file", NULL, array('%file' => $path));
  }
  if ($this->isDirectory($path) && $recursive) {
    $filelist = @ftp_nlist($this->connection, $path);
    if (!$filelist) {
      //empty directory - returns false
      return;
    }
    foreach ($filelist as $file) {
      $this->chmodJailed($file, $mode, $recursive);
    }
  }
}

© 2001–2016 by the original authors
Licensed under the GNU General Public License, version 2 and later.
Drupal is a registered trademark of Dries Buytaert.
https://api.drupal.org/api/drupal/core!lib!Drupal!Core!FileTransfer!FTPExtension.php/function/FTPExtension::chmodJailed/8.1.x