CodeIgniter - правильный способ ссылки на другую страницу в представлении - PullRequest
27 голосов
/ 05 марта 2011

Мне было интересно, может ли кто-нибудь сказать мне правильный способ ссылки на другую страницу из представления.

Есть ли функция для этого или это просто обычное выражение

Cheers

Ответы [ 6 ]

65 голосов
/ 05 марта 2011

Я предполагаю, что вы имеете в виду "внутренне" в вашем приложении.

вы можете создать свой собственный тег <a> и вставить URL в href, например,

<a href="<?php echo site_url('controller/function/uri') ?>">Link</a>

ИЛИ вы можете использовать URL-помощник таким образом, чтобы сгенерировать тег <a>

anchor(uri segments, text, attributes)

Итак ... чтобы использовать его ...

<?php echo anchor('controller/function/uri', 'Link', 'class="link-class"') ?>

и этобудет генерировать

<a href="http://domain.com/index.php/controller/function/uri" class="link-class">Link</a>

Для дополнительного комментария вопроса

Я бы использовал мой первый пример

, так что ...

<a href="<?php echo site_url('controller/function') ?>"><img src="<?php echo base_url() ?>img/path/file.jpg" /></a>

для изображений (и других ресурсов) Я бы не указывал путь к файлу в php, я просто повторил бы base_url () и затем добавил бы путь нормально.

1 голос
/ 23 июня 2017

Вы также можете использовать короткий тег PHP, чтобы сделать его короче.вот пример

<a href="<?= site_url('controller/function'); ?>Contacts</a>

или используйте встроенную функцию привязки CI.

1 голос
/ 19 октября 2015

Лучше всего использовать следующий код:

<a href="<?php echo base_url() ?>directory_name/filename.php">Link</a>
0 голосов
/ 15 марта 2019

Вы также можете использовать этот код

// test "class =" btn btn-primary pull-right ">

0 голосов
/ 23 июня 2017

Лучший и самый простой способ - использовать тег привязки в CodeIgniter, например,

<?php 
    $this->load->helper('url'); 
    echo anchor('name_of_controller_file/function_name_if_any', 'Sign Out', array('class' => '', 'id' => '')); 
?>

Подробнее см. https://www.codeigniter.com/user_guide/helpers/url_helper.html

Это, безусловно, сработает.

0 голосов
/ 02 января 2017
<a href="<?php echo site_url('controller/function'); ?>Compose</a>

<a href="<?php echo site_url('controller/function'); ?>Inbox</a>

<a href="<?php echo site_url('controller/function'); ?>Outbox</a>

<a href="<?php echo site_url('controller/function'); ?>logout</a>

<a href="<?php echo site_url('controller/function'); ?>logout</a>
...