我正在寻找一个常量或变量,它将为我的应用程序根提供公共路径。
到目前为止FULL_BASE_URL
给了我http://www.example.com
但是我的应用程序存在于子目录中(例如http://www.example.com/myapp/
)。
有没有办法在我的控制器中获得http://www.example.com/myapp/
之类的路径?
答案 0 :(得分:8)
$this->Html->url( '/', true );
通常,您应该使用该功能生成所有链接,请参阅http://book.cakephp.org/view/1448/url
答案 1 :(得分:4)
$this->base;
答案 2 :(得分:0)
<?php
...
$this->redirect( Router::url( "/", true ));
...
?>
Router是HtmlHelper :: link,Controller :: redirect等使用的静态类.Router :: url方法接受一个字符串或数组并将其与路由匹配。然后它返回与路由信息匹配的URL作为字符串。
如果您将“/”传递给Router :: url调用,您将获得指向应用根目录的相对链接。如果将“/”和true传递给Router :: url调用,则会将完整的BASE_URL添加到生成的相对路径中。这应该给你你需要的东西。如果没有,这里是路由器文档的链接。尝试尝试使用第二个布尔参数 - 它可能会或可能不会按预期工作,具体取决于您阅读的内容/您自己的测试。