PHP 8.3.4 Released!

ftp_raw

(PHP 5, PHP 7, PHP 8)

ftp_rawSends an arbitrary command to an FTP server

Description

ftp_raw(FTP\Connection $ftp, string $command): ?array

Sends an arbitrary command to the FTP server.

Parameters

ftp

An FTP\Connection instance.

command

The command to execute.

Return Values

Returns the server's response as an array of strings, or null on failure. No parsing is performed on the response string, nor does ftp_raw() determine if the command succeeded.

Changelog

Version Description
8.1.0 The ftp parameter expects an FTP\Connection instance now; previously, a resource was expected.

Examples

Example #1 Using ftp_raw() to login to an FTP server manually.

<?php
$ftp
= ftp_connect("ftp.example.com");

/* This is the same as:
ftp_login($ftp, "joeblow", "secret"); */
ftp_raw($ftp, "USER joeblow");
ftp_raw($ftp, "PASS secret");
?>

See Also

  • ftp_exec() - Requests execution of a command on the FTP server

add a note

User Contributed Notes 3 notes

up
4
nightwalker85 at gmail dot com
18 years ago
<?
ftp_raw($ftpconn,"CLNT <client>");
?>

Is a good way to let the ftp-server know which client it's dealing with. Guess this can be useful if you're making a homemade ftp-client. Only do this if the ftp-server has responded to FEAT command with a response including CLNT.
up
2
www.bossftp.com
15 years ago
Note that the $command can not contains any illegal character such as \n, \r, \t, or this function will return NULL.

Try using the trim() before calling ftp_raw().

<?php
ftp_raw
($connid, trim($command));
?>
up
1
WebSee.ru
14 years ago
How to realize the possibility of transferring data from one FTP-server to another via FXP?

<?php
// ...

$ansver = ftp_raw($ftp_conn1, 'PASV');

if (
intval($ansver[0]) == 227) {
ftp_raw($ftp_conn2, 'PORT '.substr($ansver[0], $n = strpos($ansver[0], '(') + 1, strpos($m[0], ')', $n) - $n));
ftp_raw($ftp_conn1, 'STOR '.$filename); // need asynchronously (non-blocking)
ftp_raw($ftp_conn2, 'RETR '.$filename);
}
?>
To Top