Код php для автоматической загрузки на сайт ссылок файлов с хостинга?
Добрый день, форумчане!
Задача: ссылки на скачивание файлов (сборок) автоматически загружались (обновлялись) на сайте.
Как есть сейчас: на сервер, хостинг beget выкладываем новую сборку - и ручками идем в wordpress править ссылку для скачивания.
Необходимо процесс автоматизировать - выложили на хостинг новую сборку - автоматически обновилась ссылка для скачивания на сайте.
Я - разработчик бд, никогда не имела дело с php, но вот получила такую задачу, если у кого-нибудь будут примеры, образцы как это вообще можно сделать, на какие функции/параметры обратить внимание, в какую сторону копать - буду премного благодарна!
Сделать последнюю сборку всегда с индексом latest прочие ссылки если не нужны. Ну а так сканер папки и простая функция который будет выводить ссылки. Сканер запускать например руками или по крон
Ну или ссылка одна на скрипт, который сам посмотрит папку и отдаст последний
Дмитрий, Спасибо за ответ. Выводить ссылку на сборку нужно не последней версии, а только последнюю "утвержденную", поэтому с latest не получится. В папке будет один файл exe с меняющимися на конце цифрами. Со сканированием разобралась - да, будет крон. Простая функция? Может есть примеры?
mahatma_gandii, может быть все что угодно, тут используются регулярки, они могут не отрабатывать
Я бы делал не так, сканировал папку и отдавал последний файл
$array = [];
$dir = realpath('.'); // директория где лежат файлы
$fileSPLObjects = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($dir), RecursiveIteratorIterator::CHILD_FIRST);
foreach($fileSPLObjects as $fullFileName => $fileSPLObject ) {
if ($fileSPLObject->isFile()) {
$info = new SplFileInfo($fullFileName);
if ($info->getExtension() === 'exe') {
$array[$info->getMTime()] = $fullFileName; // либо просто имя файла
}
}
}
echo '<pre>';
print_r($array); массив файлов, сортируем как надо и забираем файл по метке, нужный элемент либо первый, либо последний
Ну и судя по структуре папок, можно этот массив разобрать на части и создать массив, куда передавать части версии. Типо 2,3,3
А использование Phing не усложнение задачи? Порылась в инете, да, Phing обеспечивает сценарий копирования файлов из одного места в другое, стоит ли разбираться с Phing-ом, или как выше Дмитрий предложил написать index.php с функцией вывода ссылок и кроном сканировать обновления?
mahatma_gandii, это ооочень разноплановый интернет + он интегрирован со всем чем только можно - от тестирования и оптимизации кода, до загрузки на ресурсы вроде гитхаба. смотри раздел плагинов на оф.сайте. т.к. инструмент разноплановый, то и пригодится много где.