PHP Class Horde_Vfs_Ssh2, horde

This module requires the SSH2 (version 0.10+) PECL package. Required values for $params:
username - (string) The username with which to connect to the ssh2 server.
password - (string) The password with which to connect to the ssh2 server.
hostspec - (string) The ssh2 server to connect to.
Optional values for $params:
port - (integer) The port used to connect to the ssh2 server if other than
       22.
Copyright 2006-2016 Horde LLC (http://www.horde.org/) See the enclosed file COPYING for license information (LGPL). If you did not receive this file, see http://www.horde.org/licenses/lgpl21.
Inheritance: extends Horde_Vfs_Base
Datei anzeigen Open project: horde/horde

Protected Properties

Property Type Description
$_credentials array List of additional credentials required for this VFS backend.
$_cwd string The current working directory.
$_gids array Local cache array for group IDs.
$_permissions array List of permissions and if they can be changed in this VFS backend.
$_sftp resource The SFTP resource stream.
$_stream resource Variable holding the connection to the ssh2 server.
$_uids array Local cache array for user IDs.

Public Methods

Method Description
changePermissions ( string $path, string $name, string $permission ) Changes permissions for an item on the VFS.
copy ( string $path, string $name, string $dest, boolean $autocreate = false ) Copies a file through the backend.
createFolder ( string $path, string $name ) Creates a folder on the VFS.
deleteFile ( string $path, string $name ) Deletes a file from the VFS.
deleteFolder ( string $path, string $name, boolean $recursive = false ) Deletes a folder from the VFS.
exists ( string $path, string $name ) : boolean Returns if a given file or folder exists in a folder.
getCurrentDirectory ( ) : string Returns the current working directory on the SSH2 server.
isFolder ( string $path, string $name ) : boolean Checks if a given item is a folder.
move ( string $path, string $name, string $dest, boolean $autocreate = false ) Moves a file through the backend.
read ( string $path, string $name ) : string Retrieves a file from the VFS.
readFile ( string $path, string $name ) : string Retrieves a file from the VFS as an on-disk local file.
readStream ( string $path, string $name ) : resource Open a stream to a file in the VFS.
rename ( string $oldpath, string $oldname, string $newpath, string $newname ) Renames a file in the VFS.
size ( string $path, string $name ) : integer Returns the size of a file.
write ( string $path, string $name, string $tmpFile, boolean $autocreate = false ) Stores a file in the VFS.
writeData ( string $path, string $name, string $data, boolean $autocreate = false ) Stores a file in the VFS from raw data.

Protected Methods

Method Description
_connect ( ) Attempts to open a connection to the SSH2 server.
_getPath ( string $path, string $name ) : mixed Returns the full path of an item.
_listFolder ( string $path = '', string | array $filter = null, boolean $dotfiles = true, boolean $dironly = false ) : array Returns an unsorted file list of the specified directory.
_parentDir ( string $path ) : string Returns the parent directory of the specified path.
_recv ( string $remote, string $local ) : boolean Receives file from remote host.
_send ( string $local, string $remote ) : boolean Sends local file to remote host.
_setPath ( string $path ) Changes the current directory on the server.
_wrap ( string $remote ) : string Generate a stream wrapper file spec for a remote file path

Method Details

_connect() protected method

Attempts to open a connection to the SSH2 server.
protected _connect ( )

_getPath() protected method

Returns the full path of an item.
protected _getPath ( string $path, string $name ) : mixed
$path string The directory of the item.
$name string The name of the item.
return mixed Full path to the file when $path is not empty and just $name when not set.

_listFolder() protected method

Returns an unsorted file list of the specified directory.
protected _listFolder ( string $path = '', string | array $filter = null, boolean $dotfiles = true, boolean $dironly = false ) : array
$path string The path of the directory.
$filter string | array Regular expression(s) to filter file/directory name on.
$dotfiles boolean Show dotfiles?
$dironly boolean Show only directories?
return array File list.

_parentDir() protected method

Returns the parent directory of the specified path.
protected _parentDir ( string $path ) : string
$path string The path to get the parent of.
return string The parent directory.

_recv() protected method

This function exists because the ssh2_scp_recv function doesn't seem to work on some hosts.
protected _recv ( string $remote, string $local ) : boolean
$remote string Full path to the remote location.
$local string Full path to the local file.
return boolean Success.

_send() protected method

This function exists because the ssh2_scp_send function doesn't seem to work on some hosts.
protected _send ( string $local, string $remote ) : boolean
$local string Full path to the local file.
$remote string Full path to the remote location.
return boolean Success.

_setPath() protected method

Changes the current directory on the server.
protected _setPath ( string $path )
$path string The path to change to.

_wrap() protected method

Generate a stream wrapper file spec for a remote file path
protected _wrap ( string $remote ) : string
$remote string Full path to the remote location
return string A full stream wrapper path to the remote location

changePermissions() public method

Changes permissions for an item on the VFS.
public changePermissions ( string $path, string $name, string $permission )
$path string The parent folder of the item.
$name string The name of the item.
$permission string The permission to set in octal notation.

copy() public method

Copies a file through the backend.
public copy ( string $path, string $name, string $dest, boolean $autocreate = false )
$path string The path of the original file.
$name string The name of the original file.
$dest string The name of the destination directory.
$autocreate boolean Auto-create the directory if it doesn't exist?

createFolder() public method

Creates a folder on the VFS.
public createFolder ( string $path, string $name )
$path string The parent folder.
$name string The name of the new folder.

deleteFile() public method

Deletes a file from the VFS.
public deleteFile ( string $path, string $name )
$path string The path to delete the file from.
$name string The filename to delete.

deleteFolder() public method

Deletes a folder from the VFS.
public deleteFolder ( string $path, string $name, boolean $recursive = false )
$path string The parent folder.
$name string The name of the folder to delete.
$recursive boolean Force a recursive delete?

exists() public method

Returns if a given file or folder exists in a folder.
public exists ( string $path, string $name ) : boolean
$path string The path to the folder.
$name string The file or folder name.
return boolean True if it exists, false otherwise.

getCurrentDirectory() public method

Returns the current working directory on the SSH2 server.
public getCurrentDirectory ( ) : string
return string The current working directory.

isFolder() public method

Checks if a given item is a folder.
public isFolder ( string $path, string $name ) : boolean
$path string The parent folder.
$name string The item name.
return boolean True if it is a folder, false otherwise.

move() public method

Moves a file through the backend.
public move ( string $path, string $name, string $dest, boolean $autocreate = false )
$path string The path of the original file.
$name string The name of the original file.
$dest string The destination file name.
$autocreate boolean Auto-create the directory if it doesn't exist?

read() public method

Retrieves a file from the VFS.
public read ( string $path, string $name ) : string
$path string The pathname to the file.
$name string The filename to retrieve.
return string The file data.

readFile() public method

This function provides a file on local disk with the data of a VFS file in it. This file cannot be modified! The behavior if you do modify it is undefined. It will be removed at the end of the request.
public readFile ( string $path, string $name ) : string
$path string The pathname to the file.
$name string The filename to retrieve.
return string A local filename.

readStream() public method

Open a stream to a file in the VFS.
public readStream ( string $path, string $name ) : resource
$path string The pathname to the file.
$name string The filename to retrieve.
return resource The stream.

rename() public method

Renames a file in the VFS.
public rename ( string $oldpath, string $oldname, string $newpath, string $newname )
$oldpath string The old path to the file.
$oldname string The old filename.
$newpath string The new path of the file.
$newname string The new filename.

size() public method

Returns the size of a file.
public size ( string $path, string $name ) : integer
$path string The path of the file.
$name string The filename.
return integer The size of the file in bytes.

write() public method

Stores a file in the VFS.
public write ( string $path, string $name, string $tmpFile, boolean $autocreate = false )
$path string The path to store the file in.
$name string The filename to use.
$tmpFile string The temporary file containing the data to be stored.
$autocreate boolean Automatically create directories?

writeData() public method

Stores a file in the VFS from raw data.
public writeData ( string $path, string $name, string $data, boolean $autocreate = false )
$path string The path to store the file in.
$name string The filename to use.
$data string The file data.
$autocreate boolean Automatically create directories?

Property Details

$_credentials protected_oe property

List of additional credentials required for this VFS backend.
protected array $_credentials
return array

$_cwd protected_oe property

The current working directory.
protected string $_cwd
return string

$_gids protected_oe property

Local cache array for group IDs.
protected array $_gids
return array

$_permissions protected_oe property

List of permissions and if they can be changed in this VFS backend.
protected array $_permissions
return array

$_sftp protected_oe property

The SFTP resource stream.
protected resource $_sftp
return resource

$_stream protected_oe property

Variable holding the connection to the ssh2 server.
protected resource $_stream
return resource

$_uids protected_oe property

Local cache array for user IDs.
protected array $_uids
return array