如何在CakePHP中获取控制器内部的基本url

如何在CakePHP中获取控制器内部的基本url,cakephp,cakephp-2.6,Cakephp,Cakephp 2.6,我使用的是CakePHP2.6.7。我想获取以下url: www.mydomain.com/orderfromresller/82BC1562-22F9-4326-8B4B-37029710e8c 我试着: $resellerURL = $this->webroot . 'OrderFromReseller/' . $this->request->data['Reseller']['api_key']; 但当我回显$resellerURL的值时,它回显http://orde

我使用的是CakePHP2.6.7。我想获取以下url:

www.mydomain.com/orderfromresller/82BC1562-22F9-4326-8B4B-37029710e8c

我试着:

$resellerURL = $this->webroot . 'OrderFromReseller/' . $this->request->data['Reseller']['api_key']; 
但当我回显
$resellerURL
的值时,它回显
http://orderfromreseller/82BC1562-22F9-4326-8B4B-370129710E8C


要在cakephp中正确获取基本url,是否有
$this->webroot
的替代方法?

您想使用
路由器::url()
获取完整url。例如,要获取主页的完整网址:-

Router::url('/', true);
只要将
true
作为第二个参数传递,就可以传递任何路由器数组作为第一个参数来获取完整的URL。例如:-

$url = Router::url(
    ['controller' => 'pages', 'action' => 'display', 'test'],
    true
);

您想使用
Router::url()
获取完整的url。例如,要获取主页的完整网址:-

Router::url('/', true);
只要将
true
作为第二个参数传递,就可以传递任何路由器数组作为第一个参数来获取完整的URL。例如:-

$url = Router::url(
    ['controller' => 'pages', 'action' => 'display', 'test'],
    true
);

它在CakePHP3.5中为我工作,请遵循下面的代码

1) 将此代码添加到控制器顶部
namespace App\controller

use Cake\Routing\Router;
2)
$baseUrl=Router::url('/',true)


这是在cakephp 3+中获取基本url的最佳且简单的方法。在cakephp 3.5中,这对我来说是可行的。请遵循以下代码

1) 将此代码添加到控制器顶部
namespace App\controller

use Cake\Routing\Router;
2)
$baseUrl=Router::url('/',true)

这是在CakePHP3中获取基本url的最佳且简单的方法+