Подтвердить что ты не робот

CodeIgniter current_url не отображает строки запроса

Привет, я пытаюсь сохранить текущий url в переменной сеанса.

В моем приложении используются строки запроса, например www.domain.com/add?url=http://www.google.com

но current_url() возвращает 'ww.domain.com/add'. URL-адрес без строк запроса.

Я проверил вспомогательный файл, и current_url, похоже, просто добавляет сегменты uri к параметру site_url, установленному в config.

    function current_url()
{
    $CI =& get_instance();
    return $CI->config->site_url($CI->uri->uri_string());
}

кто-нибудь знает, как я могу захватить строки запроса, чтобы добавить их, или даже просто захватить весь URL-адрес.

4b9b3361

Ответ 1

Создайте MY_url_helper:

function current_url()
{
    $CI =& get_instance();

    $url = $CI->config->site_url($CI->uri->uri_string());
    return $_SERVER['QUERY_STRING'] ? $url.'?'.$_SERVER['QUERY_STRING'] : $url;
}

Ответ 2

Я не думаю, что у CodeIgniter есть помощники для этого. Просто используйте встроенную поддержку PHP для этого:

Повторите полный URL-адрес:

echo base_url().ltrim($_SERVER['REQUEST_URI'], '/');

Только строки запроса:

echo $_SERVER['QUERY_STRING'];