首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Cakephp,在加载视图时动态地将变量写入css文件?

Cakephp,在加载视图时动态地将变量写入css文件?
EN

Stack Overflow用户
提问于 2010-07-20 09:25:14
回答 2查看 3.4K关注 0票数 2

我正在设计一个过程,将jquery中发生的操作保存在cakephp中的视图中。我认为加载保存的值(如DIV的宽度和高度)的一种简单方法是让cakephp在css文件中回显一个变量作为它们的宽度/高度,这与它在视图文件中执行此操作的方式非常相似。我想我不确定在哪里可以找到关于这方面的信息,如果它在cakephp食谱中,我想我错过了它,因为我不知道如何在那里做它。任何建议都是值得感谢的。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2010-07-20 09:45:52

这实际上非常简单(也很强大),并且可以在没有CakePHP的帮助下完成。

首先,在webroot中创建一个名为css.php的新文件。在该文件的顶部放置以下内容:

代码语言:javascript
运行
复制
<?php header("Content-Type: text/css"); ?>

现在,在布局的头部链接到这个文件,就像你链接一个普通的CSS文件一样。

代码语言:javascript
运行
复制
<link rel="stylesheet" href="/path/css.php" type="text/css" />  

现在就有了一个动态CSS文件。您可以像这样将信息传递给它:

代码语言:javascript
运行
复制
<link rel="stylesheet" href="/path/css.php?c=red&fw=700" type="text/css" />  

CSS要访问上面提到的变量,可以在CLARIFICATION:文件中使用$_GET变量。看看上面的链接标签。要访问css文件中的这些变量,您可以执行如下操作:

代码语言:javascript
运行
复制
.class {color:<?php echo $_GET['c']; ?>;font-weight:<?php echo $_GET['fw']; ?>;}

更新:在查看了您发布的关于css的链接后,我意识到如果您打算将大量变量传递给CakePHP文件,有一种更好的方法可以做到这一点。

创建一个名为DynamicStyle和DynamicStylesController (或类似的名称)的新模型和控制器。然后,创建一个名为css.ctp的新布局文件,此控制器的所有视图都将使用该布局文件。在该布局文件中声明content-type头语句。

最后一步是从标准布局标题的头部链接到控制器中的方法。

现在,您可以创建一个包含css规则的数据库表,并在css视图中通过HTML助手使用这些规则。

票数 3
EN

Stack Overflow用户

发布于 2010-07-21 13:46:51

我刚刚意识到CakePHP也有这个功能:

http://book.cakephp.org/view/1440/style

因此,这对将来遇到这个问题的任何人都很有用。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3286353

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档