CakeFest 2024: The Official CakePHP Conference

ftp_mdtm

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

ftp_mdtmВозвращает время последней модификации файла

Описание

ftp_mdtm(FTP\Connection $ftp, string $filename): int

ftp_mdtm() возвращает время последней модификации удалённого файла.

Замечание:

Не все серверы поддерживают эту функцию!

Замечание:

ftp_mdtm() не работает с директориями.

Список параметров

ftp

An FTP\Connection instance.

filename

Файл, время модификации которого надо получить.

Возвращаемые значения

Возвращает время последней модификации виде локальной временной метки Unix или -1 в случае возникновения ошибки.

Список изменений

Версия Описание
8.1.0 Параметр ftp теперь ожидает экземпляр класса FTP\Connection; раньше параметр ждал ресурс (resource).

Примеры

Пример #1 Пример использования ftp_mdtm()

<?php

$file
= 'somefile.txt';

// установка соединения
$ftp = ftp_connect($ftp_server);

// вход с именем пользователя и паролем
$login_result = ftp_login($ftp, $ftp_user_name, $ftp_user_pass);

// получение времени модификации файла
$buff = ftp_mdtm($ftp, $file);

if (
$buff != -1) {
// дата последней модификации somefile.txt : March 26 2003 14:16:41.
echo "Дата последней модификации $file : " . date("F d Y H:i:s.", $buff);
} else {
echo
"Не удалось выполнить mdtime";
}

// закрытие соединения
ftp_close($ftp);

?>

add a note

User Contributed Notes 3 notes

up
4
mawkapelle at gmail dot com
5 years ago
Wrapped the above in a function, for easy use:

function getMtime($filename, $server, $login, $pwd){

// set up connection
$conn_id = ftp_connect($server) or die("ERROR:Could not connect to $server");

// login
$login_result = ftp_login($conn_id, $login, $pwd);

// get the last modified time for our file
$buff = ftp_mdtm($conn_id, $filename);

// close the connection
ftp_close($conn_id);

if ($buff != -1) {
// somefile.txt was last modified on: March 26 2003 14:16:41.
return "$filename was last modified on : " . date("F d Y H:i:s.", $buff);
} else {
return "ERROR: Could not retrieve mdtime";
}
}

$filename='example.csv';
$server='ftp.example.nl';
$login='supersecureloginhere';
$pwd='supersecurepwd';

$mtime=getMtime($filename, $server, $login, $pwd);
echo $mtime;
up
-4
Jaytop
18 years ago
Seems to work with directories as well on my Win32 box.
up
-10
wseibert at hxcorp dot com
19 years ago
When trying to get the modified time of a file that has spaces in it, ftp_mdtm will fail on some FTP servers. If this happens, surround the file name with quotes.

$file_name = "my index.html";

$file_modtime = ftp_mdtm($connection, '"'.$file_name.'"')
To Top