超薄闪光:传递一个阵列

时间:2015-12-22 17:30:05

标签: arrays flash slim

我想使用the Slim Framework Flash Messages service provider传递数组但是我的数组转换为字符串,因此整个事情都不合适......

如果我理解正确the code for the addMessage method它应该有效,除非它没有。

这里有一个小例子:

session_start();

$app = new \Slim\App(['settings' => ['displayErrorDetails' => true]]);

$container = $app->getContainer();

$container['flash'] = function() {
    return new \Slim\Flash\Messages();
};

$app->get('/foo', function ($request, $response, $args) {
    $this->flash->addMessage('test', ['key' => 'value']);

    return $response->withStatus(302)->withHeader('Location', '/bar');
});

$app->get('/bar', function ($request, $response, $args) {
    $messages = $this->flash->getMessages();

    print_r($messages); // returns Array ( [test] => Array ( [0] => Array ) ) 
});

$app->run();

我错过了什么吗?

1 个答案:

答案 0 :(得分:0)

它与您使用的slim-flash版本有关。如果您查看differences between the current (only one) version (0.1.0) and master branch,则会发现您遇到的错误已在PR 12中修复。

在我们等待其他版本的同时,您可以暂时使用dev-master中的composer.json版本,一切正常:

"slim/flash": "dev-master"