Spec-Zone.ru › CodeIgniter 4

HTML Помощник

Файл HTML Помощника содержит функции, которые помогают работать с HTML.

  • Загрузка этого Помощника
  • Доступные Функции

Загрузка этого Помощника

Этот помощник загружается с помощью следующего кода:

helper('html');

Доступные Функции

Доступны следующие функции:

img([$src = ''[, $indexPage = false[, $attributes = '']]])
Параметры:
  • $src (строка|массив) – URI источника изображения или массив атрибутов и значений
  • $indexPage (булево) – Указывает, следует ли рассматривать $src как маршрутизированную строку URI
  • $attributes (смешанный тип) – Дополнительные HTML атрибуты
Возвращаемое значение:

HTML тег изображения

Тип возвращаемого значения:

строка

Позволяет создавать HTML теги <img />. Первый параметр содержит URI источника изображения. Пример:

echo img('images/picture.jpg');
// <img src="http://site.com/images/picture.jpg" />

Существует необязательный второй параметр, который представляет собой значение true/false, указывающее, должно ли поле src иметь страницу, указанную $config['indexPage'] , добавленную к создаваемому адресу. Вероятно, это необходимо, если вы используете контроллер медиа:

echo img('images/picture.jpg', true);
// <img src="http://site.com/index.php/images/picture.jpg" alt="" />

Кроме того, в качестве первого параметра можно передать ассоциативный массив для полного контроля над всеми атрибутами и значениями. Если атрибут alt не указан, CodeIgniter сгенерирует пустую строку.

Пример:

$imageProperties = [
    'src'    => 'images/picture.jpg',
    'alt'    => 'Me, demonstrating how to eat 4 slices of pizza at one time',
    'class'  => 'post_images',
    'width'  => '200',
    'height' => '200',
    'title'  => 'That was quite a night',
    'rel'    => 'lightbox',
];

img($imageProperties);
// <img src="http://site.com/index.php/images/picture.jpg" alt="Me, demonstrating how to eat 4 slices of pizza at one time" class="post_images" width="200" height="200" title="That was quite a night" rel="lightbox" />
img_data([$src = ''[, $indexPage = false[, $attributes = '']]])
Параметры:
  • $path (строка) – Путь к файлу изображения
  • $mime (строка|null) – Тип MIME, используемый или null для определения по умолчанию
Возвращаемое значение:

строка изображения в формате base64

Тип возвращаемого значения:

строка

Генерирует готовую к использованию строку src изображения с использованием протокола “data:”. Пример:

$src = img_data('public/images/picture.jpg'); // data:image/jpg;base64,R0lGODl...
echo img($src);

Существует необязательный второй параметр для указания типа MIME, в противном случае функция использует настройки Mimes для определения:

$src = img_data('path/img_without_extension', 'image/png'); // data:image/png;base64,HT5A822...

Обратите внимание, что $path должен существовать и быть читаемым изображением в формате, поддерживаемом протоколом data:. Эта функция не рекомендуется для очень больших файлов, но она обеспечивает удобный способ предоставления изображений из вашего приложения, которые недоступны в сети (например, в папке public/).

link_tag([$href = ''[, $rel = 'stylesheet'[, $type = 'text/css'[, $title = ''[, $media = ''[, $indexPage = false[, $hreflang = '']]]]]]])
Параметры:
  • $href (строка) – Источник файла ссылки
  • $rel (строка) – Тип отношения
  • $type (строка) – Тип связанного документа
  • $title (строка) – Заголовок ссылки
  • $media (строка) – Тип носителя
  • $indexPage (булево) – Указывает, следует ли рассматривать $src как маршрутизированную строку URI
  • $hreflang (строка) – Тип hreflang
Возвращаемое значение:

HTML тег ссылки

Тип возвращаемого значения:

строка

Позволяет создавать HTML теги <link />. Это полезно для ссылок на таблицы стилей, а также для других ссылок. Параметрами являются href, с необязательными rel, type, title, media и indexPage.

indexPage – булево значение, указывающее, нужно ли добавлять страницу, указанную $config['indexPage'], к адресу, который создается.

Пример:

echo link_tag('css/mystyles.css');
// <link href="http://site.com/css/mystyles.css" rel="stylesheet" type="text/css" />

Дополнительные примеры:

echo link_tag('favicon.ico', 'shortcut icon', 'image/ico');
// <link href="http://site.com/favicon.ico" rel="shortcut icon" type="image/ico" />

echo link_tag('feed', 'alternate', 'application/rss+xml', 'My RSS Feed');
// <link href="http://site.com/feed" rel="alternate" type="application/rss+xml" title="My RSS Feed" />

В качестве альтернативы, ассоциативный массив можно передать в функцию link_tag() для полного контроля над всеми атрибутами и значениями:

$link = [
    'href'  => 'css/printer.css',
    'rel'   => 'stylesheet',
    'type'  => 'text/css',
    'media' => 'print',
];

echo link_tag($link);
// <link href="http://site.com/css/printer.css" rel="stylesheet" type="text/css" media="print" />
script_tag([$src = ''[, $indexPage = false]])
Параметры:
  • $src (смешанный тип) – Имя файла JavaScript
  • $indexPage (булево) – Указывает, следует ли рассматривать $src как маршрутизированную строку URI
Возвращаемое значение:

HTML тег скрипта

Тип возвращаемого значения:

строка

Позволяет создавать HTML теги <script></script>. Параметрами являются src, с необязательным indexPage.

indexPage – булево значение, указывающее, нужно ли добавлять страницу, указанную $config['indexPage'], к адресу, который создается.

Пример:

echo script_tag('js/mystyles.js');
// <script src="http://site.com/js/mystyles.js" type="text/javascript"></script>

В качестве альтернативы, ассоциативный массив можно передать в функцию script_tag() для полного контроля над всеми атрибутами и значениями:

$script = ['src'  => 'js/printer.js'];

echo script_tag($script);
// <script src="http://site.com/js/printer.js" type="text/javascript"></script>
ul($list[, $attributes = ''])
Параметры:
  • $list (массив) – Элементы списка
  • $attributes (массив) – HTML атрибуты
Возвращаемое значение:

Форматированный HTML список

Тип возвращаемого значения:

строка

Позволяет генерировать немаркированные HTML списки из простых или многомерных массивов. Пример:

$list = [
    'red',
    'blue',
    'green',
    'yellow',
];

$attributes = [
    'class' => 'boldlist',
    'id'    => 'mylist',
];

echo ul($list, $attributes);

Вышеприведенный код создаст это:

<ul class="boldlist" id="mylist">
    <li>red</li>
    <li>blue</li>
    <li>green</li>
    <li>yellow</li>
</ul>

Вот более сложный пример с использованием многомерного массива:

$attributes = [
    'class' => 'boldlist',
    'id'    => 'mylist',
];

$list = [
    'colors' => [
        'red',
        'blue',
        'green',
    ],
    'shapes' => [
        'round',
        'square',
        'circles' => [
            'ellipse',
            'oval',
            'sphere',
        ],
    ],
    'moods'  => [
        'happy',
        'upset'   => [
            'defeated' => [
                'dejected',
                'disheartened',
                'depressed',
            ],
            'annoyed',
            'cross',
            'angry',
        ]
    ]
];

echo ul($list, $attributes);

Вышеприведенный код создаст это:

<ul class="boldlist" id="mylist">
    <li>colors
        <ul>
            <li>red</li>
            <li>blue</li>
            <li>green</li>
        </ul>
    </li>
    <li>shapes
        <ul>
            <li>round</li>
            <li>suare</li>
            <li>circles
                <ul>
                    <li>elipse</li>
                    <li>oval</li>
                    <li>sphere</li>
                </ul>
            </li>
        </ul>
    </li>
    <li>moods
        <ul>
            <li>happy</li>
            <li>upset
                <ul>
                    <li>defeated
                        <ul>
                            <li>dejected</li>
                            <li>disheartened</li>
                            <li>depressed</li>
                        </ul>
                    </li>
                    <li>annoyed</li>
                    <li>cross</li>
                    <li>angry</li>
                </ul>
            </li>
        </ul>
    </li>
</ul>
ol($list, $attributes = '')
Параметры:
  • $list (массив) – Элементы списка
  • $attributes (массив) – HTML атрибуты
Возвращаемое значение:

Форматированный HTML список

Тип возвращаемого значения:

строка

Идентично ul(), только создает тег <ol> для нумерованных списков вместо <ul>.

video($src[, $unsupportedMessage = ''[, $attributes = ''[, $tracks = [][, $indexPage = false]]]])
Параметры:
  • $src (смешанный тип) – Строка или массив источников. См. функцию source()
  • $unsupportedMessage (строка) – Сообщение, отображаемое, если тег медиа не поддерживается браузером
  • $attributes (строка) – HTML атрибуты
  • $tracks (массив) – Используйте функцию track внутри массива. См. функцию track()
  • $indexPage (булево) –
Возвращаемое значение:

Форматированный HTML элемент видео

Тип возвращаемого значения:

строка

Позволяет генерировать HTML элемент видео из простых или массивов источников. Пример:

$tracks = [
    track('subtitles_no.vtt', 'subtitles', 'no', 'Norwegian No'),
    track('subtitles_yes.vtt', 'subtitles', 'yes', 'Norwegian Yes')
];

echo video('test.mp4', 'Your browser does not support the video tag.', 'controls');

echo video(
    'http://www.codeigniter.com/test.mp4',
    'Your browser does not support the video tag.',
    'controls',
    $tracks
);

echo video([
    source('movie.mp4', 'video/mp4', 'class="test"'),
    source('movie.ogg', 'video/ogg'),
    source('movie.mov', 'video/quicktime'),
    source('movie.ogv', 'video/ogv; codecs=dirac, speex')
],
    'Your browser does not support the video tag.',
    'class="test" controls',
    $tracks
 );

Вышеприведенный код создаст это:

<video src="test.mp4" controls>
  Your browser does not support the video tag.
</video>

<video src="http://www.codeigniter.com/test.mp4" controls>
  <track src="subtitles_no.vtt" kind="subtitles" srclang="no" label="Norwegian No" />
  <track src="subtitles_yes.vtt" kind="subtitles" srclang="yes" label="Norwegian Yes" />
  Your browser does not support the video tag.
</video>

<video class="test" controls>
  <source src="movie.mp4" type="video/mp4" class="test" />
  <source src="movie.ogg" type="video/ogg" />
  <source src="movie.mov" type="video/quicktime" />
  <source src="movie.ogv" type="video/ogv; codecs=dirac, speex" />
  <track src="subtitles_no.vtt" kind="subtitles" srclang="no" label="Norwegian No" />
  <track src="subtitles_yes.vtt" kind="subtitles" srclang="yes" label="Norwegian Yes" />
  Your browser does not support the video tag.
</video>
audio($src[, $unsupportedMessage = ''[, $attributes = ''[, $tracks = [][, $indexPage = false]]]])
Параметры:
  • $src (смешанный тип) – Строка или массив источников. См. функцию source()
  • $unsupportedMessage (строка) – Сообщение, отображаемое, если тег медиа не поддерживается браузером
  • $attributes (строка) –
  • $tracks (массив) – Используйте функцию track внутри массива. См. функцию track()
  • $indexPage (булево) –
Возвращаемое значение:

Форматированный HTML элемент аудио

Тип возвращаемого значения:

строка

Идентично video(), только создает тег <audio> вместо <video>.

source($src = ''[, $type = false[, $attributes = '']])
Параметры:
  • $src (string) – Путь к медиа-ресурсу
  • $type (bool) – MIME-тип ресурса с необязательными параметрами кодеков
  • $attributes (array) – HTML-атрибуты
Возвращает:

Тег HTML тэга source

Тип возвращаемого значения:

string

Позволяет создавать HTML-тэги <source />. Первый параметр содержит путь к источнику. Пример:

echo source('movie.mp4', 'video/mp4', 'class="test"');
// <source src="movie.mp4" type="video/mp4" class="test" />
embed($src = ''[, $type = false[, $attributes = ''[, $indexPage = false]]])
Параметры:
  • $src (string) – Путь к ресурсу для вставки
  • $type (bool) – MIME-тип
  • $attributes (array) – HTML-атрибуты
  • $indexPage (bool) –
Возвращает:

Тег HTML тэга embed

Тип возвращаемого значения:

string

Позволяет создавать HTML-тэги <embed />. Первый параметр содержит источник для вставки. Пример:

echo embed('movie.mov', 'video/quicktime', 'class="test"');
// <embed src="movie.mov" type="video/quicktime" class="test"/>
object($data = ''[, $type = false[, $attributes = '']])
Параметры:
  • $data (string) – URL ресурса
  • $type (bool) – Тип содержимого ресурса
  • $attributes (array) – HTML-атрибуты
  • $params (array) – Используйте функцию param внутри массива. См. функцию param()
Возвращает:

Тег HTML тэга object

Тип возвращаемого значения:

string

Позволяет создавать HTML-тэги <object />. Первый параметр содержит данные объекта. Пример:

echo object('movie.swf', 'application/x-shockwave-flash', 'class="test"');

echo object(
    'movie.swf',
    'application/x-shockwave-flash',
    'class="test"',
    [
        param('foo', 'bar', 'ref', 'class="test"'),
        param('hello', 'world', 'ref', 'class="test"')
    ]
);

Вышеприведённый код сгенерирует следующее:

<object data="movie.swf" class="test"></object>

<object data="movie.swf" class="test">
  <param name="foo" type="ref" value="bar" class="test" />
  <param name="hello" type="ref" value="world" class="test" />
</object>
param($name = ''[, $type = false[, $attributes = '']])
Параметры:
  • $name (string) – Имя параметра
  • $value (string) – Значение параметра
  • $attributes (array) – HTML-атрибуты
Возвращает:

Тег HTML тэга param

Тип возвращаемого значения:

string

Позволяет создавать HTML-тэги <param />. Первый параметр содержит источник параметра. Пример:

echo param('movie.mov', 'video/quicktime', 'class="test"');
// <param src="movie.mov" type="video/quicktime" class="test"/>
track($name = ''[, $type = false[, $attributes = '']])
Параметры:
  • $name (string) – Имя параметра
  • $value (string) – Значение параметра
  • $attributes (array) – HTML-атрибуты
Возвращает:

Тег HTML тэга track

Тип возвращаемого значения:

string

Генерирует элемент track для указания временных дорожек. Дорожки отформатированы в формате WebVTT. Пример:

echo track('subtitles_no.vtt', 'subtitles', 'no', 'Norwegian No');
// <track src="subtitles_no.vtt" kind="subtitles" srclang="no" label="Norwegian No" />
doctype([$type = 'html5'])
Параметры:
  • $type (string) – Название типа документа
Возвращает:

Тег HTML тэга doctype

Тип возвращаемого значения:

string

Помогает генерировать объявления типов документов или DTD. По умолчанию используется HTML 5, но доступно много типов документов.

Пример:

echo doctype();
// <!DOCTYPE html>

echo doctype('html4-trans');
// <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">

Ниже приведён список предварительно определённых вариантов типа документа. Они настраиваются, взяты из app/Config/DocTypes.php, или могут быть переопределены в вашей конфигурации .env.

Тип документа Вариант Результат
XHTML 1.1 xhtml11 <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.1//EN” “http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd”>
XHTML 1.0 Strict xhtml1-strict <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Strict//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd”>
XHTML 1.0 Transitional xhtml1-trans <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”>
XHTML 1.0 Frameset xhtml1-frame <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Frameset//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-frameset.dtd”>
XHTML Basic 1.1 xhtml-basic11 <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML Basic 1.1//EN” “http://www.w3.org/TR/xhtml-basic/xhtml-basic11.dtd”>
HTML 5 html5 <!DOCTYPE html>
HTML 4 Strict html4-strict <!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01//EN” “http://www.w3.org/TR/html4/strict.dtd”>
HTML 4 Transitional html4-trans <!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Transitional//EN” “http://www.w3.org/TR/html4/loose.dtd”>
HTML 4 Frameset html4-frame <!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01 Frameset//EN” “http://www.w3.org/TR/html4/frameset.dtd”>
MathML 1.01 mathml1 <!DOCTYPE math SYSTEM “http://www.w3.org/Math/DTD/mathml1/mathml.dtd”>
MathML 2.0 mathml2 <!DOCTYPE math PUBLIC “-//W3C//DTD MathML 2.0//EN” “http://www.w3.org/Math/DTD/mathml2/mathml2.dtd”>
SVG 1.0 svg10 <!DOCTYPE svg PUBLIC “-//W3C//DTD SVG 1.0//EN” “http://www.w3.org/TR/2001/REC-SVG-20010904/DTD/svg10.dtd”>
SVG 1.1 Full svg11 <!DOCTYPE svg PUBLIC “-//W3C//DTD SVG 1.1//EN” “http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd”>
SVG 1.1 Basic svg11-basic <!DOCTYPE svg PUBLIC “-//W3C//DTD SVG 1.1 Basic//EN” “http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-basic.dtd”>
SVG 1.1 Tiny svg11-tiny <!DOCTYPE svg PUBLIC “-//W3C//DTD SVG 1.1 Tiny//EN” “http://www.w3.org/Graphics/SVG/1.1/DTD/svg11-tiny.dtd”>
XHTML+MathML+SVG (XHTML host) xhtml-math-svg-xh <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.1 plus MathML 2.0 plus SVG 1.1//EN” “http://www.w3.org/2002/04/xhtml-math-svg/xhtml-math-svg.dtd”>
XHTML+MathML+SVG (SVG host) xhtml-math-svg-sh <!DOCTYPE svg:svg PUBLIC “-//W3C//DTD XHTML 1.1 plus MathML 2.0 plus SVG 1.1//EN” “http://www.w3.org/2002/04/xhtml-math-svg/xhtml-math-svg.dtd”>
XHTML+RDFa 1.0 xhtml-rdfa-1 <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML+RDFa 1.0//EN” “http://www.w3.org/MarkUp/DTD/xhtml-rdfa-1.dtd”>
XHTML+RDFa 1.1 xhtml-rdfa-2 <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML+RDFa 1.1//EN” “http://www.w3.org/MarkUp/DTD/xhtml-rdfa-2.dtd”>

© 2014–2020 British Columbia Institute of Technology
Licensed under the MIT License.
https://codeigniter.com/user_guide/helpers/html_helper.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API