2024 年 PHP Conference Japan

ftp_connect

(PHP 4, PHP 5, PHP 7, PHP 8)

ftp_connect開啟 FTP 連線

說明

ftp_connect(字串 $hostname, 整數 $port = 21, 整數 $timeout = 90): FTP\Connection|false

ftp_connect() 會開啟一個 FTP 連線到指定的 hostname

參數

hostname

FTP 伺服器位址。此參數不應包含任何結尾斜線,也不應以 ftp:// 作為前綴。

port

此參數指定要連線的替代埠。如果省略或設為零,則會使用預設的 FTP 埠,即 21。

timeout

此參數指定所有後續網路操作的逾時時間(以秒為單位)。如果省略,則預設值為 90 秒。可以使用 ftp_set_option()ftp_get_option() 隨時更改和查詢逾時時間。

返回值

成功時返回一個 FTP\Connection 實例,失敗時返回 false

更新日誌

版本 說明
8.1.0 現在返回一個 FTP\Connection 實例;先前返回的是 資源

範例

範例 #1 ftp_connect() 範例

<?php

$ftp_server
= "ftp.example.com";

// 建立連線,否則中止
$ftp = ftp_connect($ftp_server) or die("無法連線到 $ftp_server");

?>

參見

新增註記

使用者貢獻的註記 1 則註記

16
sean at boyercentral dot net
15 年前
是否曾需要從 URI 建立預設到特定目錄的 FTP 連線資源?以下是一個簡單的函式,它會接受像 ftp://username:password@subdomain.example.com/path1/path2/, 這樣的 URI,並返回一個 FTP 連線資源。

<?php
函式 getFtpConnection($uri)
{
// 將 FTP URI 拆分為:
// $match[0] = ftp://username:password@sld.domain.tld/path1/path2/
// $match[1] = ftp://
// $match[2] = 使用者名稱
// $match[3] = 密碼
// $match[4] = sld.domain.tld
// $match[5] = /path1/path2/
preg_match("/ftp:\/\/(.*?):(.*?)@(.*?)(\/.*)/i", $uri, $match);

// 建立連線
$conn = ftp_connect($match[1] . $match[4] . $match[5]);

// 登入
if (ftp_login($conn, $match[2], $match[3]))
{
// 切換目錄
ftp_chdir($conn, $match[5]);

// 返回資源
return $conn;
}

// 或返回 null
return null;
}
?>
To Top