FuelPHPのUri::base()は何を返すのか?
少し前のQuiitaのこの記事。
Uri::base(false)でhttp://xxxx.jp/
を取得できなかったとあります。
気になったので、FuelPHP 1.7.2をインストールして検証してみます。
class Controller_Welcome extends Controller
{
public function action_index()
{
return Uri::base();
}
}
結果:http://localhost:8000/
ということで、http://xxxx.jp/
部分を取得できました。
では、どういう場合に、取得できなくなるのでしょうか?
config/config.php
のbase_url
の設定を変更します。
'base_url' => 'http://xxxx.jp/',
結果:http://xxxx.jp/
この場合も取得できました。
'base_url' => 'test/',
結果:test/
このケースではhttp://
から始まるURLは取得できません。
まとめ
Uri::base()
はbase_url
の値を返しますが、base_url
は設定値がnull
の場合(デフォルト)、自動的に検知されます。
config/config.php
* Set this to null to have it automatically detected.
*/
// 'base_url' => null,
参考
Date: 2014/12/23