Может быть, кто-то может мне помочь, я предоставляю XML-файлы, которые генерируются из запроса PHP DB, и каждый XML-файл имеет уникальное имя. Теперь я хочу подготовить такую функцию, как «получить последний XML-файл», но я не знаю, как лучше!
$xml = simplexml_load_file('test.xml');
Я нашел эту функцию, но там я должен знать точное имя!
или возможно что-то подобное:
$xml = simplexml_load_file('test.php');
и в test.php у меня есть функция, чтобы получить фамилию, но как я могу предоставить данные XML?
Некоторые ключевые слова, как я могу найти решение в Google, были бы очень полезны!
Первый параметр этой функции — это строка имени файла. Файл должен быть файлом XML для загрузки, поэтому вы не можете использовать другой файл php.
http://php.net/manual/en/function.simplexml-load-file.php
Поэтому вам нужно сначала получить имя файла в виде строки, используя переменную. Вы должны быть в состоянии скопировать код в свой файл test.php, а затем сохранить имя файла вместо того, чтобы выводить его. Затем вы используете эту переменную при загрузке XML-файла.
например
function get_latest_filename()
{
//contents of your test.php file should set this variable
$latest_filename = 'the_latest_file.xml';
return $latest_filename;
}
$latest = get_latest_filename();
$xml = simplexml_load_file($latest);
вот законченное решение, которое сработало для меня
я защитил каталог с помощью .htaccess, и внутри я храню все мои сгенерированные xml-файлы, а также файл getLastXml.php!
getLastXml.php
function get_last_file() {
$lastFileTime = 0;
foreach (glob("*.xml") as $filename) {
if ($lastFileTime<filemtime($filename))
{
$lastFileTime = filemtime($filename);
$lastFileName = $filename;
}
}
return $lastFileName;
}
$lastXmlFile = get_last_file();
header ("Content-Type:text/xml");
echo file_get_contents($lastXmlFile);
функции get_last_file () возвращают имя последнего созданного XML-файла и
header ("Content-Type:text/xml");
отображает xml в php файле
echo file_get_contents($lastXmlFile);
загружает содержимое XML-файла и отображает его
simplexml_load_file("http://username:passwort@urlToTheDirectory/getLastXml.php");
загружает данные XML с