ftpサーバーがこの接続タイプを受け入れる場合は、URLラッパーを使用することで、デフォルトのmove_uploaded_file()を使用できます。または、PHPのftp関数、特にftp_put()を使用して、ファイルをサーバーにアップロードすることもできます。
コンテンツ配信の場合、コンテンツ配信サーバーで元のURLを取得し、そのURLをhtml引数に配置するためのデータベースまたはその他の手段が必要です。
<img src="http://cdn1.example.com/images/68263483.png" />
<a href="http://cdn2.example.com/files/9872345.pdf">Download PDF</a>
アップロードされたファイルを処理するためのサンプルコードは次のようになります
<?php
// ...
$uploads_dir = 'images';
foreach ($_FILES["pictures"]["error"] as $key => $error) {
if ($error == UPLOAD_ERR_OK) {
$tmp_name = $_FILES["pictures"]["tmp_name"][$key];
$name = $_FILES["pictures"]["name"][$key];
move_uploaded_file($tmp_name,
"ftp://user:pass@cdn1.example.com/$uploads_dir/$name");
// save url in your database for later retrieval ...
}
}
またはftp_put()を使用:
<?php
// ...
$ftpCon = ftp_connect('cdn1.example.com')
or die('Could not connect to ftp server');
$uploads_dir = 'images';
foreach ($_FILES["pictures"]["error"] as $key => $error) {
if ($error == UPLOAD_ERR_OK) {
$tmp_name = $_FILES["pictures"]["tmp_name"][$key];
$name = $_FILES["pictures"]["name"][$key];
ftp_put($ftpCon, "$uploads_dir/$name", $tmp_name)
or die("could not upload $name to ftp server");
// save url in your database for later retrieval ...
}
}