访问css文件laravel中的会话变量

时间:2017-04-12 08:53:55

标签: php css laravel session laravel-5

我的laravel应用程序中有动态css颜色的css文件名 style-usercolors.css.php 。在文件中我可以声明变量并使用它,但无法访问会话变量。

header("Content-type: text/css");

$primaryColor = session()->has('ORGANISATION_SETTINGS') ? session()->get('ORGANISATION_SETTINGS')['style_settings']['primary_color'] : '#F18805';
$secondaryColor = session()->has('ORGANISATION_SETTINGS') ? session()->get('ORGANISATION_SETTINGS')['style_settings']['secondary_color'] : '#20576B';
$offwhite = '#f6f6f6';

2 个答案:

答案 0 :(得分:0)

您需要有一个已定义的路由来访问Laravel中的会话。在 web.php 中定义路由时,默认情况下会启用 StartSession 中间件。这启动了Laravel会议。

这些中间件在Web部分的App \ Http \ Kernel.php中定义。

换句话说,要使用会话,您需要为css文件创建一个特定路由,向其添加header("Content-Type: text/css");并在那里需要您的CSS。

最后,在主视图中,您必须创建指向该页面的链接:

<link href="http://example.com/link-to-your-css-page/" rel="stylesheet" type="text/css"/>

(注意我们如何在href属性的末尾没有文件扩展名)

答案 1 :(得分:0)

最后,我创建了一个刀片文件,然后我将css与session变量一起编写,然后将刀片文件包含在layout header部分中。这个过程解决了我的问题。