phpseclib API Documentation
Class

Net_SCP

class Net_SCP

Pure-PHP implementations of SCP.

Properties

object $ssh SSH Object
int $packet_size Packet Size
int $mode Mode

Methods

Net_SCP Net_SCP($ssh)

Default Constructor.

bool put(string $remote_file, string $data, int $mode = NET_SCP_STRING, callable $callback = null)

Uploads a file to the SCP server.

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

Downloads a file from the SCP server.

_send(string $data)

Sends a packet to an SSH server

string _receive()

Receives a packet from an SSH server

_close()

Closes the connection to an SSH server

Details

at line 125
public Net_SCP Net_SCP($ssh)

Default Constructor.

Connects to an SSH server

Parameters

$ssh

Return Value

Net_SCP

at line 167
public bool put(string $remote_file, string $data, int $mode = NET_SCP_STRING, callable $callback = null)

Uploads a file to the SCP server.

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

Setting $mode to NETSCPLOCALFILE will change the above behavior. With NETSCPLOCALFILE, $remotefile will contain as many bytes as filename.ext does on your local filesystem. If your filename.ext is 1MB then that is how large $remotefile 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
int $mode
callable $callback

Return Value

bool

at line 241
public mixed get(string $remote_file, string $local_file = false)

Downloads a file from the SCP server.

Returns a string containing the contents of $remotefile if $localfile 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

Return Value

mixed

at line 297
public _send(string $data)

Sends a packet to an SSH server

Parameters

string $data

at line 315
public string _receive()

Receives a packet from an SSH server

Return Value

string

at line 350
public _close()

Closes the connection to an SSH server