# Codeigniter APPPATH BASEPATH FCPATH 各種パスと URL 取得
codeigniter 使って開発するなら、APPPATH は誰でもしているはずですが、あまり使わない BASEPATH や host URL 取得するための site_url() url ヘルパーの使い方は忘れがちですね。
APPPATH BASEPATH と FCPATH
APPPATH とは /application/
よく使う APPPATH は APP の PATH でわかりやすい!Codeigniter applicationディレクトリのパス(index.php から「application」への相対パス)になります。
BASEPATH とは /system/
Codeigniter コアフォルダ systemディレクトリの物理パス
FCPATH とは
CodeIgniter の index.php が存在するディレクトリ
# url ヘルパー
$this->load->helper('url');
echo site_url('news/local/123');
// http://example.com/index.php/news/local/123
echo base_url("blog/post/123");
// http://example.com/blog/post/123
echo current_url();
// blog/post/123
echo index_page();
// 設定configファイルに設定されているindex_page返す
redirect('/login');
// 指定パスへリダイレクト
# redirect ヘッダ リダイレクト
redirect($uri = '', $method = 'auto', $code = NULL)
- $uri (string) – URI 文字列
- $method (string) – 利用可能なメソッドは
autolocationrefresh - $code (string) – HTTP Response Code(通常 302 or 303)
# current_url() 現在の URL 取得
現在表示されているページの完全な URL(セグメントを含む)を 返します。
site_url(uri_string())と同じ機能しますが、より簡単に使えます。
echo current_url();
// blog/post/123
uri_string()は URI セグメントを返します
echo uri_string();
// http://example.com/blog/post/123の場合
// blog/post/123
# $_SERVER サーバー情報
Codeigniter だけでなく、PHP なら$_SERVER でいろいろ取得できますので、php 公式ドキュメント (opens new window)参考に
- SERVER_ADDR サーバー IP アドレス
- SERVER_NAME サーバーネーム
- REMOTE_ADDR リモート IP アドレス
- HTTP_HOST ホスト取得
- REDIRECT_STATUS HTTP ステータスコード
$host = $_SERVER['HTTP_HOST'];
$protocol=$_SERVER['PROTOCOL']; // 'https' 'http'
$_SERVER['HTTP_X_FORWARDED_FOR'];
$_SERVER['REMOTE_ADDR'];
$_SERVER["REDIRECT_STATUS"]