示例#1
0
 /**
  * @see RemoteDriver::ls($dir, $full, $recursive)
  */
 public function ls($dir = ".", $full = false, $recursive = false)
 {
     $this->connectIfNeeded();
     $this->param = $dir;
     $fileListConverter = $this->fileListConverter;
     $res = array();
     if (!$full) {
         $opts = $recursive ? "-R " : "";
         $res = ftp_nlist($this->handle, $opts . $dir);
         $fileListConverter = new SimpleFileListConverter();
     } else {
         $res = ftp_rawlist($this->handle, $dir, $recursive);
     }
     if ($res === false) {
         throw new FtpException(Yii::t('gftp', 'Could not read folder "{folder}" on server "{host}"', ['host' => $this->host, 'folder' => $dir]));
     }
     return $fileListConverter->parse($res);
 }
示例#2
0
 public function ls($dir = ".", $full = false, $recursive = false)
 {
     $this->connectIfNeeded();
     $fileListConverter = $this->fileListConverter;
     if ($full) {
         $files = $this->handle->rawlist($dir, $recursive);
     } else {
         $files = $this->handle->nlist($dir, $recursive);
         $fileListConverter = new SimpleFileListConverter();
     }
     if ($files === false) {
         throw new FtpException(Yii::t('gsftp', 'Could not read folder "{folder}" on server "{host}"', ['host' => $this->host, 'folder' => $dir]));
     }
     return $fileListConverter->parse($files, $dir);
 }