diff --git a/index.php b/index.php index b20577d669cf5a4e96d45f79e5c60258ac92da9c..88f892b5becaea90acfe01dd277afca50804137d 100644 --- a/index.php +++ b/index.php @@ -101,5 +101,15 @@ print "

Разница дней:

"; print $func->diffDays(new DateTimeImmutable(), new DateTimeImmutable("2025-01-01")); ?> + + +

Function 8

+ readLogFile(__DIR__ . "/public/text.txt"); + } catch (Exception $e) { + print $e->getMessage(); + } + ?> \ No newline at end of file diff --git a/src/Functions.php b/src/Functions.php index aca1d299d3aca876d91a9ee0b41ea82750768726..ce1742a26eaf9939e2574ef9c006f9e5d65c9de3 100644 --- a/src/Functions.php +++ b/src/Functions.php @@ -181,5 +181,31 @@ class Functions $dateInterval = date_diff($dateStart, $dateEnd); return (int)$dateInterval->format("%a") ; } + + /** + * Напиши функцию, которая принимает путь до файла, + * проверяет, что файл существует и выводит пользователю весь контент файла + * (файл можешь создать любой) + * @param string $filePath путь до файла + * @return void + * @throws Exception + */ + + public function readLogFile(string $filePath): void + { + if (file_exists($filePath)) { + $text = ""; + $file = fopen($filePath, 'rb'); + while(!feof($file)) { + $line = fgets($file); + $text .= $line; + } + fclose($file); + print $text; + } + else { + throw new RuntimeException("File not found: $filePath"); + } + } }