有人可以告诉我当前在 CakePHP 2.x 的 CSS 文件中使用 PHP 的方法吗
我目前已将我的样式表分成一个 php 文件,并希望通过 URL 解析我的数据,但我似乎无法弄清楚如何使用链接它
$this->Html->css('dynamic-stylesheet')
因为它总是将 .css 附加到名称中。
非常感谢您的帮助。
有人可以告诉我当前在 CakePHP 2.x 的 CSS 文件中使用 PHP 的方法吗
我目前已将我的样式表分成一个 php 文件,并希望通过 URL 解析我的数据,但我似乎无法弄清楚如何使用链接它
$this->Html->css('dynamic-stylesheet')
因为它总是将 .css 附加到名称中。
非常感谢您的帮助。
您可以使用生成标签HtmlHelper::meta()
echo $this->Html->meta(array(
'link' => '/css/test.php',
'rel' => 'stylesheet',
'type' => 'text/css'
));
请注意,您需要将其显式定向到/css
目录,因为您不再使用专门用于 CSS 的辅助方法。
查看位于 lib/Cake/View/Helper/HtmlHelper.php 的 CakePHP 库中的 Html 帮助文件,查看第 427 行,看起来 .css 扩展名是自动设置的,除非 CSS 文件名中有两个斜杠。我猜那是为了捕捉外部资源?
从上述库文件中:
if (strpos($path, '//') !== false) {
$url = $path;
} else {
$url = $this->assetUrl($path, $options + array('pathPrefix' => CSS_URL, 'ext' => '.css'));
if (Configure::read('Asset.filter.css')) {
$pos = strpos($url, CSS_URL);
if ($pos !== false) {
$url = substr($url, 0, $pos) . 'ccss/' . substr($url, $pos + strlen(CSS_URL));
}
}
}
所以这..
echo $this->Html->css('http://whatever.com/css/dynamic-stylesheet.php');
将呈现 dynamic-stylesheet.php 文件,而不是默认为 'dynamic-stylesheet.css。
不确定这就是它的用途,但也许该文件会对您有所帮助。