![](/img/trans.png)
[英]How to pass a second variable from routes.php to a controller in Laravel 5?
[英]How to use variable from routes.php in controller
在CakePHP中,有一堆唯一的URL名称在routes.php
文件中重定向。 与此类似:
$beautiful_urls[0] = '/view/location-name/image-name.html';
Router::connect($beautiful_urls[0],
array('controller' => 'Foo','action' => 'bar',3,60));
我想基于美化的名称创建like
按钮的facebook。 为了做到这一点,我需要在Foo
控制器的routes.php
中使用$beautiful_urls
变量。
我如何从控制器访问routes.php中的变量? 到目前为止,我尝试将其与App::use('routes','Config');
链接起来App::use('routes','Config');
但它不起作用。 我还考虑过将值作为动作参数发送,但这似乎不是一个好习惯……我知道将配置文件与控制器的逻辑混合并不是一个好主意,但到目前为止我还没有更好的主意。
我不是cakephp用户,但简单的搜索显示有一个名为ClassRegistry的类。
您可以创建类BeautifulUrls并将其存储在此处。 根据文档,它是单例,并且可以从任何地方访问。
另外,您可以使BeautifulUrls实现ArrayAccess接口,从而不必更改路由
我不知道这是否是一个好习惯,但是我的解决方案是使用CakePHP的Configure类。 它易于使用,并且可以在代码和配置文件中的任何位置访问。
您可以使用
Configure::write('key','value');
并再次阅读
Configure::read('key');
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.