2012-03-24 88 views

回答

4

設置你的URI協議REQUEST_URIapplication/config/config.php,像這樣:

$config['uri_protocol'] = 'REQUEST_URI'; 

然後使用GET方法:

$this->input->get('a'); 

編輯:

由於HTTP://示例.com/test?a = 1 & b = 2不是編碼的URL,這是不可能的。因此,首先,我會編碼URL與urlencode功能是這樣的:

urlencode('http://example.com/test?a=1&b=2'); 

返回類似:http%3A%2F%2Fexample.com%2Ftest%3Fa%3D1%26b%3D2

所以我會通過這樣的網址:

http://myurl.com/?url=http%3A%2F%2Fexample.com%2Ftest%3Fa%3D1%26b%3D2 

然後得到一個例子使用GET方法的URL。

$this->input->get('url'); 
+0

編輯我的問題。 – vivek 2012-03-24 08:52:02

+0

我也編輯過) – 2012-03-24 10:54:35

+0

你會如何做到這一點沒有變量?你可以將它作爲URI segmenent來添加:'example.com/index.php/controller/method/var1/var2'? – user2019515 2013-05-07 03:31:23

0

使用這種技術來獲取URL

$url = "http://example.com/test?a=1&b=2"; 
$segments = array($controller, $action, $url); 
echo site_url($segments); 

// or create a anchor link 
echo anchor($segments, "click me"); 
0

通urlendode()'d在URL段,然後將其與自己的(MY_ *)類解碼:

應用/核心/ MY_URI.php :

<?php 

class MY_URI extends CI_URI { 

    function _filter_uri($str) 
    { 
     return rawurldecode(parent::_filter_uri($str)); 
    } 
} 

// EOF