2

问题

为什么我无法在 Joomla 2.5+ 中使用 Jinput 获取 cookie 的值?

细节

我以前用

$cookievalue = JRequest::getVar( 'cookievalue', 'valueifnotexist', 'COOKIE' );

但它在 joomla 3 中已被弃用。

所以我尝试使用 Jinput

$jinput = JFactory::getApplication()->input;
$cookievalue = $jinput->get( 'cookievalue', 'valueifnotexist', 'COOKIE' );

注意:根据http://docs.joomla.org/Retrieving_request_data_using_JInput没有“COOKIE”过滤器。我尝试使用“STRING”作为过滤器,但结果大致相同。我期望为 cookie 获得的值是格式date( 'Y-m-d H:i:s', time() )

结果

当我检查是否已检索到值时,我总是得到“valueifnotexist”,我使用 firebug 来确认 cookie/值存在。

4

1 回答 1

6

您可以使用以下方法获取 cookie:

JFactory::getApplication()->input->cookie->get('YOUR COOKIE NAME');

当然,您可以使用 getString() 代替 get(),或者应用您想要的任何过滤器。

我希望这有帮助。

于 2013-05-14T03:49:40.370 回答