Php/mysql 64 урок: как сделать логирование в файл?
2. Создайте самостоятельно логирование в файл выполнения работы скрипта из прошлого урока. Как это делать?
2 ответов
В этом ответе посмотрите как сделать логирование:
https://fructcode.com/ru/qa/kak-sdelat-logirovanie-iz-64-uroka-dexukn/
Если подробнее, то вам нужно воспользоваться php-функцией записи в файл, вот пример:
<?php
$fp = fopen('logs_movie.txt', 'w');
fwrite($fp, 'Интерстеллар');
fclose($fp);
?>
Этот код запишет в файл logs_movie.txt строку Интерстеллар. Вам нужно fwrite($fp, 'Интерстеллар'); поместить в цикл (который бежит по фильмам из xml файла) и заменить Интерстеллар на переменную в которой в цикле находится название фильма. Перед переменной нужно писать еще дату добавления в лог, для этого есть функция в php под названием data:
echo date("d/m/Y H:i:s");
выведет 15/03/2019 22:19:56
нужно сделать объединение данных, т.е. примерно так:
fwrite($fp, date("d/m/Y H:i:s").' - '.$movie_title);
то есть в файле лога получится много записей в формате:
15/03/2019 22:19:56 - Интерстеллар
15/03/2019 22:19:57 - Другой фильм
15/03/2019 22:19:58 - Сияние
После ввода переменных необходимо поменять код таким образом:
.........
foreach ($xml as $movie_key => $movie) {
$title = $movie->title_russian;
$title_origin = $movie->title_original;
$year = $movie->year;
$country = $movie->country->name;
$fp = fopen('logs.txt', 'a');
fwrite($fp, date("d/m/Y H:i:s").' - '.$title."\n");
fclose($fp);
.......
Дальше ничего не меняем, пишем как было на уроке: