mirror of
https://github.com/igorsimdyanov/php8.git
synced 2025-08-01 16:49:53 +00:00
Глава 28: корректура
This commit is contained in:
@ -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">
|
||||||
|
@ -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();
|
||||||
|
|
||||||
// Получаем смещение часовой зоны в секундах
|
// Получаем смещение часовой зоны в секундах
|
||||||
|
@ -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);
|
||||||
|
@ -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);
|
||||||
|
Reference in New Issue
Block a user