曾经需要创建一个默认到特定目录的 FTP 连接资源吗?这是一个简单的函数,它将接收一个类似于 ftp://username:[email protected]/path1/path2/, 的 URI,并返回一个 FTP 连接资源。
<?php
function getFtpConnection($uri)
{
// 将 FTP URI 拆分为:
// $match[0] = ftp://username:[email protected]/path1/path2/
// $match[1] = ftp://
// $match[2] = username
// $match[3] = password
// $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;
}
?>