如何获取样式表或javascript文件的绝对路径。
<?php echo $this->Html->css('/css/main.css');?>
提供网址
<link rel="stylesheet" type="text/css" href="/dev/theme/Default/css/main.css" />
我正在寻找
<link rel="stylesheet" type="text/css" href="http://localhost/dev/theme/Default/css/main.css" />
答案 0 :(得分:4)
我真的很想知道如果CSS文件与您的网站在同一个域上提供,您会想要这样做,但这可能会有效;
<?php echo $this->Html->css($this->Html->url('/css/main.css', true));?>
HtmlHelper :: url()(继承自Helper :: url()接受两个参数。第一个是作为字符串或数组的路径(使用cakephp路由),如果布尔值'true'传递为第二个参数是,生成一个“完整”的URL。
我现在不在我的电脑上,因此无法测试它,但我认为它应该可以工作。
<强>更新强>
我快速浏览了一下来源:https://github.com/cakephp/cakephp/blob/master/lib/Cake/View/Helper/HtmlHelper.php#L431
和HtmlHelper :: css()在内部使用Helper :: assetUrl();
https://github.com/cakephp/cakephp/blob/master/lib/Cake/View/Helper.php#L305
所以这可能也有效,如果有效,它是一个更清洁的解决方案:
<?php echo $this->Html->css('main', null, array('fullBase' => true));?>