正如我在一些资源已阅读,base_url()和site_url()功能codeigniter几乎是一样的,虽然我的版本笨的(2.1.3)没有在它的config.php文件一SITE_URL()(在config目录)。
base_url()
site_url()
codeigniter
但是自从我看到带有参数的site_url()却从未见过base_url()不持有任何参数以来,它们之间有任何区别吗?
echo base_url(); // http://example.com/website echo site_url(); // http://example.com/website/index.php
如果您想通过URL访问资源(例如CSS,JS,图像),请使用base_url(),否则site_url()效果更好。
有关详细参考,请在CodeIgniter中检查这两个功能。
public function site_url($uri = '') { if (empty($uri)) { return $this->slash_item('base_url').$this->item('index_page'); } $uri = $this->_uri_string($uri); if ($this->item('enable_query_strings') === FALSE) { $suffix = isset($this->config['url_suffix']) ? $this->config['url_suffix'] : ''; if ($suffix !== '') { if (($offset = strpos($uri, '?')) !== FALSE) { $uri = substr($uri, 0, $offset).$suffix.substr($uri, $offset); } else { $uri .= $suffix; } } return $this->slash_item('base_url').$this->slash_item('index_page').$uri; } elseif (strpos($uri, '?') === FALSE) { $uri = '?'.$uri; } return $this->slash_item('base_url').$this->item('index_page').$uri; }
基本网址功能。
public function base_url($uri = '') { return $this->slash_item('base_url').ltrim($this->_uri_string($uri), '/'); }