我们需要一个名为main_site_url()的新函数,例如base_url(),以便能够像site_url()一样使用它。
我刚刚将它添加到application / config中的主配置文件中:
$config['main_site_url'] = 'http//iksna.com/';
将此代码添加到/system/core/config.php
/**
* Main Site URL
* Returns main_site_url . index_page [. uri_string]
*
* @access public
* @param string the URI string
* @return string
*/
function main_site_url($uri = '')
{
if ($uri == '')
{
return $this->slash_item('main_site_url').$this->item('index_page');
}
if ($this->item('enable_query_strings') == FALSE)
{
$suffix = ($this->item('url_suffix') == FALSE) ? '' : $this->item('url_suffix');
return $this->slash_item('main_site_url').$this->slash_item('index_page').$this->_uri_string($uri).$suffix;
}
else
{
return $this->slash_item('main_site_url').$this->item('index_page').'?'.$this->_uri_string($uri);
}
}
// -------------------------------------------------------------
但现在无法访问:main_site_url();
可以通过以下方式访问:$this->config->main_site_url()
;
使用main_site_url()
;
错误:
Call to undefined function main_site_url()
答案 0 :(得分:2)
您可以通过以下方式创建自己的:
第1步:
在你application/config/config.php
添加此内容$config['main_site_url'] = 'http//iksna.com/';
第2步:
在system/core/Config.php
中添加一个新功能main_site_url()
,例如base_url()
,site_url()
已在此处定义:
public function main_site_url($uri = '', $protocol = NULL)
{
$main_site_url = $this->slash_item('main_site_url');
if (isset($protocol))
{
if ($protocol === '')
{
$main_site_url = substr($main_site_url, strpos($main_site_url, '//'));
}
else
{
$main_site_url = $protocol.substr($main_site_url, strpos($main_site_url, '://'));
}
}
return $main_site_url.ltrim($this->_uri_string($uri), '/');
}
第3步:
现在在system/helpers/url_helper.php
if ( ! function_exists('main_site_url'))
{
function main_site_url($uri = '', $protocol = NULL)
{
return get_instance()->config->main_site_url($uri, $protocol);
}
}
现在,您可以在控制器,库和视图中的任何位置使用main_site_url()
,就像base_url()
,site_url()
等。
答案 1 :(得分:0)
转到
/system/application/libraries
创建一个名为
的文件custom_function.php
在custom_function.php中添加函数main_site_url
使用
在控制器文件中调用函数$this->custom_function->main_site_url();