Глава 28: корректура

This commit is contained in:
Igor Simdyanov
2022-07-30 12:06:22 +03:00
parent 8d821403b2
commit 7723e90741
5 changed files with 57 additions and 46 deletions

View File

@ -1,10 +1,11 @@
<?php <?php
// Функция формирует двумерный массив, представляющий собой // Функция формирует двумерный массив, представляющий собой
// календарь на указанный месяц и год. Массив состоит из строк, // календарь на указанный месяц и год. Массив состоит из строк,
// соответствующих неделям. Каждая строка - массив из семи // соответствующих неделям. Каждая строка - массив из семи
// элементов, которые равны числам (или пустой строке, если // элементов, которые равны числам (или пустой строке, если
// данная клетка календаря пуста). // данная клетка календаря пуста).
function makeCal(int $year, int $month) : array { function makeCal(int $year, int $month) : array
{
// Получаем номер дня недели для 1 числа месяца. // Получаем номер дня недели для 1 числа месяца.
$wday = date('N'); $wday = date('N');
// Начинаем с этого числа в месяце (если меньше нуля // Начинаем с этого числа в месяце (если меньше нуля
@ -35,10 +36,10 @@
$cal[] = $row; $cal[] = $row;
} }
return $cal; return $cal;
} }
$now = getdate(); $now = getdate();
$cal = makeCal($now['year'], $now['mon']); $cal = makeCal($now['year'], $now['mon']);
?> ?>
<!DOCTYPE html> <!DOCTYPE html>
<html lang="ru"> <html lang="ru">

View File

@ -1,7 +1,8 @@
<?php <?php
// Вычисляет timestamp в Гринвиче, который соответствует // Вычисляет timestamp в Гринвиче, который соответствует
// локальному timestamp-формату // локальному timestamp-формату
function local2utc($localStamp = false) { function local2utc($localStamp = false)
{
if ($localStamp === false) $localStamp = time(); if ($localStamp === false) $localStamp = time();
// Получаем смещение часовой зоны в секундах // Получаем смещение часовой зоны в секундах
@ -16,7 +17,8 @@ function local2utc($localStamp = false) {
// смещение локальной зоны относительно UTC (в часах), // смещение локальной зоны относительно UTC (в часах),
// тогда будет осуществлен перевод в эту зону // тогда будет осуществлен перевод в эту зону
// (а не в текущую локальную). // (а не в текущую локальную).
function utc2local($gmStamp = false, $tzOffset = false) { function utc2local($gmStamp = false, $tzOffset = false)
{
if ($gmStamp === false) return time(); if ($gmStamp === false) return time();
// Получаем смещение часовой зоны в секундах // Получаем смещение часовой зоны в секундах

View File

@ -1,9 +1,16 @@
<?php <?php
$str = '<hTmL><bOdY style="background: white;">Hello, world!</bOdY></html>'; $str = <<<HTML
<hTmL>
<bOdY style="background: white;">
Hello, world!
</bOdY>
</html>
HTML;
$str = preg_replace_callback( $str = preg_replace_callback(
'{(?<btag></?)(?<content>\w+)(?<etag>.*?>)}s', '{(?<btag></?)(?<content>\w+)(?<etag>.*?>)}s',
fn($m) => $m['btag'].strtoupper($m['content']).$m['etag'], fn($m) => $m['btag'].strtoupper($m['content']).$m['etag'],
$str); $str
);
echo htmlspecialchars($str); echo htmlspecialchars($str);

View File

@ -10,6 +10,7 @@ $str = preg_replace_callback_array(
return "<strong>$m[1]</strong>"; return "<strong>$m[1]</strong>";
} }
], ],
$str); $str
);
echo htmlspecialchars($str); echo htmlspecialchars($str);