1

我确实有一个 PHP 函数,它几乎可以压缩特定的 CSS 文件。

我最近在这个项目中添加了 smarty。以前,这是我所拥有的:

<link href="<?php echo $layoutParameter['routeCSS']; ?>global.css.php" rel="stylesheet" type="text/css" />

在 global.css.php 中,我确实有一个函数可以发送回“压缩”的 CSS 内容。出于性能原因,并且由于此处包含的 CSS 文件是全局设置,因此它运行良好。

现在,使用 Smarty,我创建和扩展插件功能并执行以下操作:

<link href="{compressed}" rel="stylesheet" type="text/css" />

结果:所有的 CSS 内容都显示在网页中,换句话说,不是链接 CSS,而是包含 PHP 函数的返回字符串。

有什么办法可以用 Smarty 完成这个吗?

我将每个 CSS 添加到一个新文件中并暂时使用该文件,而没有 PHP 清理空格和注释。

谢谢,

4

2 回答 2

0

您可以分配数据

$smarty->assign('layout', $layoutParameter);

你可以到达

<link href="{$layout['routeCss']}global.css.php" rel="stylesheet" type="text/css" />

但我也不建议在 php 中压缩 css。应该是静态的

于 2013-09-18T13:50:50.390 回答
0

有一个很棒的插件叫做 Smarty Combine,它结合并缩小了多个 JS 和 CSS,你可以看看:

https://github.com/dead23angel/smarty-combine

示例(Smarty 3):

{combine input=array('/file1.js','/file2.js') output='/cache/big.js' age='30' debug=false}
于 2017-04-14T03:46:25.350 回答