1

そのため、最近、Slim2 アプリケーションを新しい第 3 バージョンに変換することにしました。多くのアプリケーションを変更する必要がありました。

もう 1 つのことは、フラッシュ メッセージがコア フレームワークから削除されたため、composer でそれらを再度追加することにしました。それらも変更されていることに気付き、何らかの理由で 1 つではなく 2 つの値を持つ配列を取得しています。

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

$this->app->flash->addMessage('error', 'hello');

$flash = $this->flash->getMessages();
print_r($flash); // returns Array ( [error] => Array ( [0] => hello [1] => hello ) )

私のテンプレートも明らかにこれについて不平を言っています。これは正しいタイプではないためです

Notice: Array to string conversion in cache\66\664fc695876aa16573ce7a84cfe29c998af42da36e69199f149219a4e821d44a.php on line 80 Array

Slim2 がフラッシュ メッセージを使用したのと同じようにフラッシュ メッセージを使用するにはどうすればよいですか? または、それらを使用する必要がありますか?同じ仕事をすることができるより良い代替手段はありますか?

4

4 に答える 4

0

ソース呼び出しを見るとgetMessages()、配列が返されます。メッセージが 1 つだけ必要な場合は、 を使用できますgetMessage()。たとえばgetMessage("error")

于 2015-11-06T15:23:39.120 に答える