\phpseclib\NetSCP

Pure-PHP implementations of SCP.

Summary

Methods
Properties
Constants
__construct()
put()
get()
_send()
_receive()
_close()
$ssh
$packet_size
$mode
SOURCE_LOCAL_FILE
SOURCE_STRING
MODE_SSH1
MODE_SSH2
No protected methods found
No protected properties found
N/A
No private methods found
No private properties found
N/A

Constants

SOURCE_LOCAL_FILE

SOURCE_LOCAL_FILE

Reads data from a local file.

SOURCE_STRING

SOURCE_STRING

Reads data from a string.

MODE_SSH1

MODE_SSH1

SSH1 is being used.

MODE_SSH2

MODE_SSH2

SSH2 is being used.

Properties

$ssh

$ssh : object

SSH Object

Type

object

$packet_size

$packet_size : integer

Packet Size

Type

integer

$mode

$mode : integer

Mode

Type

integer

Methods

put()

put(string  $remote_file, string  $data, integer  $mode = self::SOURCE_STRING, callable  $callback = null) : boolean

Uploads a file to the SCP server.

By default, \phpseclib\Net\SCP::put() does not read from the local filesystem. $data is dumped directly into $remote_file. So, for example, if you set $data to 'filename.ext' and then do \phpseclib\Net\SCP::get(), you will get a file, twelve bytes long, containing 'filename.ext' as its contents.

Setting $mode to self::SOURCE_LOCAL_FILE will change the above behavior. With self::SOURCE_LOCAL_FILE, $remote_file will contain as many bytes as filename.ext does on your local filesystem. If your filename.ext is 1MB then that is how large $remote_file will be, as well.

Currently, only binary mode is supported. As such, if the line endings need to be adjusted, you will need to take care of that, yourself.

Parameters

string $remote_file
string $data
integer $mode
callable $callback

Returns

boolean

get()

get(string  $remote_file, string  $local_file = false) : mixed

Downloads a file from the SCP server.

Returns a string containing the contents of $remote_file if $local_file is left undefined or a boolean false if the operation was unsuccessful. If $local_file is defined, returns true or false depending on the success of the operation

Parameters

string $remote_file
string $local_file

Returns

mixed

_send()

_send(string  $data) 

Sends a packet to an SSH server

Parameters

string $data

_receive()

_receive() : string

Receives a packet from an SSH server

Returns

string

_close()

_close() 

Closes the connection to an SSH server