PHP从localhost逐行读取ftp文件

时间:2013-10-16 09:12:07

标签: php fopen fread

我有一个存储在ftp帐户上的文本文件。我有主机名,用户名和密码。我不知道文件的名称是什么,但我知道在root上只有1个文件。我必须逐行读取该文件并将该内容存储到php变量中。

这就是我的尝试:

$ftp_server = "myhostname";
$conn_id = ftp_connect($ftp_server);
$ftp_user_name = "myusename";
$ftp_user_pass = "mypassword";
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);


if ((!$conn_id) || (!$login_result)) { } 
else {  
ftp_pasv( $conn_id, true ); 

    $contents = ftp_nlist($conn_id, ".");   

    $filename = $contents[0]; //name of the file

    $handle = fopen($filename, "r");
    $file_content = fread($handle, filesize($filename));        
    print_r($file_content);         

}

我从我的localhost运行这个脚本,但它似乎试图读取存储在同一文件夹中的文件,这个文件是从ftp服务器读取的。

1 个答案:

答案 0 :(得分:0)

您需要首先使用ftp_get下载文件,然后在本地计算机上下载fopenfread

http://php.net/manual/en/function.ftp-get.php