|
|||||||
Методы генерации html-ссылок в Yii 2
Время создания: 12.12.2017 13:42
Текстовые метки: php, yii 2, html, ссылка, a href, url
Раздел: Компьютер - Программирование - Язык PHP - Yii2
Запись: xintrea/mytetra_syncro/master/base/1513075328u6hkxb81kv/text.html на raw.github.com
|
|||||||
|
|||||||
В Yii 2 существует набор HTML-хелперов, которые помогают сгенерировать строку URL или полную ссылку в виде тега <a>. Подключается хелпер так: use yii\helpers\Html; Посмотреть, какие методы поддерживает данный хелпер, можно на странице: http://www.yiiframework.com/doc-2.0/yii-helpers-html.html Генерация ссылки в виде тега <a> Тег <a> можно сгенерировать таким кодом: <?= Html::a("Главная страница", "/web/"); ?> <?= Html::a("Статьи", ['post/index']); ?> <?= Html::a("Статья", ['post/show', 'page'=>5]); ?> Здесь видно, что вторым параметром можно передавать как строку, так и массив. Правила по которым генерируется URL из массива приведены в следующем разделе. Но чтобы было понимание, сразу можно показать какие ссылки будет генерировать данный код: <a href="index.php?r=web">Главная страница</a> <a href="index.php?r=post%2Findex">Статьи</a> <a href="index.php?r=post%2Findex&page=5">Статья</a> Более подробная документация по этому методу: http://www.yiiframework.com/doc-2.0/yii-helpers-basehtml.html#a()-detail Генерация строки Url Второй параметр метода Html::a(), на самом деле, внутри реализации, передается в хелпер Url::to(), и результат его обработки помещается в атрибут href тега <a>. Расположен этот хелпер в следующем пространстве имен: use yii\helpers\BaseUrl; Данное пространство имен имеет смысл подключать, если необходимо именно генерировать строку URL. Здесь показаны различные варианты вызова этого хелпера: // /index.php?r=site%2Findex echo Url::to(['site/index']); // /index.php?r=site%2Findex&src=ref1#name echo Url::to(['site/index', 'src' => 'ref1', '#' => 'name']); // /index.php?r=post%2Findex - assume the alias "@posts" is defined as "/post/index" echo Url::to(['@posts']); // the currently requested URL echo Url::to(); // /images/logo.gif echo Url::to('@web/images/logo.gif'); // images/logo.gif echo Url::to('images/logo.gif'); // http://www.example.com/images/logo.gif echo Url::to('@web/images/logo.gif', true); // https://www.example.com/images/logo.gif echo Url::to('@web/images/logo.gif', 'https'); // //www.example.com/images/logo.gif echo Url::to('@web/images/logo.gif', ''); Документация по этому методу находится здесь: http://www.yiiframework.com/doc-2.0/yii-helpers-baseurl.html#to()-detail
|
|||||||
Так же в этом разделе:
|
|||||||
|
|||||||
|