略微加速

PHP官方手册 - 互联网笔记

PHP - Manual: 基本用法

2024-05-04

基本用法

示例 #1 FTP 例程

<?php
// 建立基础连接
$conn_id ftp_connect($ftp_server); 

// 使用用户名和口令登录
$login_result ftp_login($conn_id$ftp_user_name$ftp_user_pass); 

// 检查是否成功
if ((!$conn_id) || (!$login_result)) { 
    echo 
"FTP connection has failed!";
    echo 
"Attempted to connect to $ftp_server for user $ftp_user_name"
    exit; 
} else {
    echo 
"Connected to $ftp_server, for user $ftp_user_name";
}

// 上传文件
$upload ftp_put($conn_id$destination_file$source_fileFTP_BINARY); 

// 检查上传结果
if (!$upload) { 
    echo 
"FTP upload has failed!";
} else {
    echo 
"Uploaded $source_file to $ftp_server as $destination_file";
}

// 关闭 FTP 流
ftp_close($conn_id); 
?>
add a noteadd a note

User Contributed Notes 2 notes

up
-15
clemensroth2004 at yahoo dot de
12 years ago
My FTP-Server always responded "bool(false)" instead of presenting me a directory-listing. I had to add
ftp_pasv($conn_id, true); right after the $login_result = ftp_login(...); line.
After that it just worked fine.
up
-17
kane dot prajakta at gmail dot com
12 years ago
I used following code successfully to connect to "lftp" server and see the complete dir listing.
also ftp_pasv($conn_id, true); trick works fine for lftp server :)

<?php
// set up basic connection
$ftp_server = "example.com";
$conn_id = ftp_ssl_connect($ftp_server);

// login with username and password
$ftp_user_name = "myuser";
$ftp_user_pass = "mypass";
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
ftp_pasv($conn_id, true);
// check connection
if ((!$conn_id) || (!$login_result)) {
        echo
"FTP connection has failed!";
        echo
"Attempted to connect to $ftp_server for user $ftp_user_name";
        exit;
    } else {
        echo
"Connected to $ftp_server, for user $ftp_user_name";
    }

$buff = ftp_rawlist($conn_id, '.');
var_dump($buff);
ftp_close($conn_id); 
?>

Thanks ,
Prajakta

官方地址:https://www.php.net/manual/en/ftp.examples-basic.php

北京半月雨文化科技有限公司.版权所有 京ICP备12026184号-3