26

試してみURI::uri_string()ましたが、base_url で動作させることができません。

URL:http://localhost/dropbox/derrek/shopredux/ahahaha/hihihi
戻り値:dropbox/derrek/shopredux/ahahaha/hihihi

http://localhost/dropbox/derrek/shopredux/空の文字列を返すだけです。

最初の呼び出しで "ahahaha/hihihi" を返し、2 回目の呼び出しで "" を返します。そのような機能はありますか?

4

11 に答える 11

66
// For current url
echo base_url(uri_string());
于 2014-01-21T16:50:17.520 に答える
39

urlヘルパーがロードされている場合は、使用します

current_url();

良くなります

于 2014-08-30T06:32:31.090 に答える
12

次のような「uri」セグメントを使用してみてください。

$this->uri->segment(5);   //To get 'ahahaha'
$this->uri->segment(6);   //To get 'hihihi

最初の URL を形成します...セグメント (5)、セグメント (6) についても 2 番目の URL から '' を取得します。これらは空であるためです。

すべてのセグメント関数は、localhost からの開始を「1」および同時セグメントとしてカウントします

于 2012-09-04T04:11:42.240 に答える
5
 //if you want to get parameter from url use:
 parse_str($_SERVER['QUERY_STRING'], $_GET);
 //then you can use:
 if(isset($_GET["par"])){
      echo $_GET["par"];
 }
 //if you want to get current page url use:
 $current_url = current_url();
于 2013-05-20T11:14:57.733 に答える
0

そのような関数があるかどうかはわかりませんが、 $this->uri->uri_to_assoc() で $_GET パラメータから連想配列を取得します。これと、あなたがいるコントローラーで、URL がどのように見えるかがわかります。上記の URL では、コントローラー ドロップボックスにいることを意味し、配列は次のようになります。

array("derrek" => "shopredux", "ahahaha" => "hihihi");

これで、そのような関数を自分で作成できるはずです。

于 2012-09-03T13:54:46.423 に答える
0

いくつかの Codeigniter 関数といくつかのコア関数を使用して組み合わせて、クエリ文字列で URL を取得できます。この問題の解決策を見つけました。

base_url($this->uri->uri_string()).strrchr($_SERVER['REQUEST_URI'], "?");

URLヘルパーをロードした場合は、これも実行できますcurrent_url().strrchr($_SERVER['REQUEST_URI'], "?");

于 2020-12-10T12:09:26.837 に答える