ftp_login

(PHP 4, PHP 5, PHP 7)

ftp_login登录 FTP 服务器

说明

ftp_login ( resource $ftp_stream , string $username , string $password ) : bool

使用用户名和密码登录入给定的 FTP 连接。

参数

ftp_stream

FTP 连接的链接标识符。

username

用户名(USER)。

password

密码(PASS)。

返回值

成功时返回 TRUE, 或者在失败时返回 FALSE。 如果登录失败,PHP 会抛出一个警告。

范例

Example #1 ftp_login() 例子

<?php
                     
$ftp_server 
"ftp.example.com";
$ftp_user "foo";
$ftp_pass "bar";

// 设置一个连接或失败时退出
$conn_id ftp_connect($ftp_server) or die("Couldn't connect to $ftp_server"); 

// 尝试登录
if (@ftp_login($conn_id$ftp_user$ftp_pass)) {
    echo 
"Connected as $ftp_user@$ftp_server\n";
} else {
    echo 
"Couldn't connect as $ftp_user\n";
}

// 关闭连接
ftp_close($conn_id);  
?>

User Contributed Notes

Anonymous 07-Dec-2015 05:57
from: http://www.ietf.org/rfc/rfc1635.txt

"What is Anonymous FTP?
"...
"Traditionally, this special anonymous user account accepts any string as a password, although it is common to use either the password "guest" or one's electronic mail (e-mail) address.  Some archive sites now explicitly ask for the user's e-mail address and will not allow login with the "guest" password.  Providing an e-mail address is a courtesy that allows archive site operators to get some idea of who is using their services. "

So your code would be:
<?php
ftp_login
('ftp.example.com', 'anonymous', 'user@example.com');
?>

If a blank password works, you might have a default password set in your php.ini
Travis Weston 09-Sep-2014 08:47
To suppress the PHP warning, just prepend the function with the error suppression character @. I'm usually against error suppression, but apparently some genius thought it was a good idea to really drive the point home that you have a bad login. Returning false wasn't enough?

if( ! @ftp_login( $connection, 'USERNAME', 'PASSWORD' ) ){
        die( 'Bad login, but no PHP warning thrown.');
}
contact at evoweb dot fr 29-Aug-2014 11:18
If you want to remove the warning of a bad connection with handled error activated just add before :
set_error_handler("my_error_function", E_ALL & !E_WARNING);
and after the function :
set_error_handler("my_error_function", E_ALL);
mattsch at gmail dot com 30-Nov-2010 08:12
Note that to make an anonymous ftp connection, you need to specify "anonymous" as the username and "" (empty string) as the password.

Example:
<?php
ftp_login
('ftp.example.com', 'anonymous', '');
?>