Если у вас уже есть имена файлов для проверки, используйте filemtime
Возвращает время последнего изменения файла или FALSE при ошибке. Время возвращается как метка времени Unix, которая подходит для функции date ().
Чтобы сравнить это сегодня, вы можете использовать date('Y-m-d')
, чтобы получить сегодня, сравнить с date('Y-m-d', filemtime($filename))
Чтобы получить имена файлов, вы можете использовать readdir , чтобы прочитать каждое из них по очереди.
<?php
if ($handle = opendir('/path/to/files')) {
echo "Directory handle: $handle\n";
echo "Files:\n";
while (false !== ($filename = readdir($handle))) {
echo "$filename\n";
}
closedir($handle);
}
?>
В руководстве также есть пример FTP , который должен показать вам, как выполнить ftp файл после его обнаружения.
Итак, комбинируя все это, вы можете получить что-то вроде:
<?php
// set up basic connection
$conn_id = ftp_connect($ftp_server);
// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);
// 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";
}
if ($handle = opendir('/path/to/files')) {
while (false !== ($filename = readdir($handle))) {
if (date('Y-m-d') == date('Y-m-d', filemtime($filename))) {
// upload the file
$upload = ftp_put($conn_id, $destination_file, $filename, FTP_BINARY);
// check upload status
if (!$upload) {
echo "FTP upload has failed!";
} else {
echo "Uploaded $source_file to $ftp_server as $destination_file";
}
}
}
closedir($handle);
// close the FTP stream
ftp_close($conn_id);
?>
Конечно, вам нужно будет заполнить фиктивные значения соответствующим образом.
Отказ от ответственности : я набрал это в блокноте ++, и он не проверяется на ошибки!