Content
- Сущности
- Скрипты и таблицы стилей
- Ссылки
- Ссылки на именные маршруты
- Ссылки на действия контроллеров
- Mail-To ссылки
- Изображения
- Списки
- Пользовательские макросы
Сущности
При отображении пользовательского ввода на странице, важно конвертировать все символы, имеющие определение в HTML в представляемые сущности HTML.
Например, < символ должен быть конвертирован в сущность HTML. Конвертация HTML в их сущность защищает ваше приложение от cross-site скриптов:
Конвертация строки в сущность:
echo HTML::entities('<script>alert('hi');</script>');
Использование общего хелпера "e":
echo e('<script>alert('hi');</script>');
Скрипты и таблицы стилей
Генерация ссылки на JavaScript файл:
echo HTML::script('js/scrollTo.js');
Генерация ссылки на CSS файл:
echo HTML::style('css/common.css');
Генерация ссылки на CSS файл с использованием медиа типа:
echo HTML::style('css/common.css', 'print');
Рекомендуем к прочтению:
Ссылки
Генерация линка из URI:
echo HTML::link('user/profile', 'User Profile');
Генерация линка HTTPS:
echo HTML::secure_link('user/profile', 'User Profile');
Генерация линка с дополнительными атрибутами:
echo HTML::link('user/profile', 'User Profile', array('id' => 'profile_link'));
Ссылки на именные маршруты
Генерация линка на именной маршрут:
echo HTML::link_to_route('profile');
Генерация линка на именные маршруты с использованием маски маршрута:
$url = HTML::link_to_route('profile', array($username));
Рекомендуем к прочтению:
Ссылки на действия контроллеров
Генерация ссылки на действие контроллера:
echo HTML::link_to_action('home@index');
Генерация ссылки на действие контроллера с передачей маски параметров:
echo HTML::link_to_action('user@profile', array($username));
Mail-To ссылки
'MailTo' метод обфускации защищает данный почтовый адрес от сканирования ботами.
Создание ссылки mail-to:
echo HTML::mailto('example@gmail.com', 'E-Mail Me!');
Создание ссылки mail-to с использование e-mail адреса в качестве текста ссылки:
echo HTML::mailto('example@gmail.com');
Изображения
Генерация тэга изображения HTML:
echo HTML::image('img/smile.jpg', $alt_text);
Генерация тэга изображения HTML с дополнительными атрибутами:
echo HTML::image('img/smile.jpg', $alt_text, array('id' => 'smile'));
Списки
Создание списка с массивом элементов:
echo HTML::ol(array('Get Peanut Butter', 'Get Chocolate', 'Feast'));
echo HTML::ul(array('Ubuntu', 'Snow Leopard', 'Windows'));
Пользовательские макросы
Очень просто можно определить собственный макрос HTML класса. Сначала зарегистрируйте его закрытой фнукцией:
Регистрация HTML макроса:
HTML::macro('my_element', function()
{
return '<article type="awesome">';
});
Теперь вы его можете вызвать по имени:
Вызов пользовательского HTML макрос:
echo HTML::my_element();