Symfony:在php模板上包含css和js

时间:2011-08-22 11:07:41

标签: php javascript css symfony assets

如何在Symfony的php文件(例如index.html.php)中包含.css和.js文件? (如果重要的话,我正在使用Symfony2),我读到我必须在资产函数中包含src / link,如下所示:

<link href="<?php echo $view['assets']->getUrl('MyStyle.css') ?>" rel="stylesheet" type="text/css" />

<link href="<?php echo $view['assets']->getUrl('buttons.css') ?>" rel="stylesheet" type="text/css" />

无论是普通的还是普通的PHP都没有和我合作过。 更新:css文件位于\Bundle\Resources\public\css

1 个答案:

答案 0 :(得分:1)

您有两种选择:

不使用资产:

如果您的资源位于src/Your/Bundle/Resources/public/,则必须致电./app/console assets:install --symlink web/以创建从web/bundle/yourbundlesrc/Your/Bundle/Resources/public/的符号链接,以便可以从网络访问它们(或者您也可以执行./app/console assets:install web/直接复制文件,无需符号链接。

然后你可以这样做:

<link href="<?php echo $view['assets']->getUrl('/bundle/yourbundle/css/MyStyle.css') ?>" rel="stylesheet" type="text/css" />

使用资产:

使用资产,您无需安装/复制文件,资产将为您完成:

<?php foreach ($view['assetic']->stylesheets(
    array('@YourBundle/css/MyStyle.css')) as $url): ?>
<script type="text/javascript" src="<?php echo $view->escape($url) ?>"></script>
<?php endforeach; ?>

请参阅http://symfony.com/doc/current/cookbook/assetic/asset_management.html(单击代码示例中的PHP选项卡)。