1

Zend_Session_Namespace オブジェクトを使用してデータを保存していますが、これらのデータのほとんどは多次元配列です。Zend_Session_Namespace ロジックの一部が欠けているか、本来の目的で使用していないような気がします。

たとえば、cd id とそのトラックリストを配列として保存します。

$session = new Zend_Session_Namespace('cd-track-list');
$session->{123} = array('First Track', 'Second Track');

その後、セッションの名前空間をループしたいので、CD の ID とそのトラックリストを知りたいです。

foreach($session as $key => $value {
   // $key is 0 -> but should be 123
   // $value is array('First Track', 'Second Track');
}

$value は正しいですが、$key がここに設定されていません。私の質問は、すべての cd をループするときに cd の id を取得するにはどうすればよいですか?

前もって感謝します。

4

1 に答える 1

2

整数インデックスでは機能しません。問題は「0」にキャストされます。「Zend_Session_Namespace.php」を参照してください(__set)

$name = (string) $name;

以下を使用できます。

$session = new Zend_Session_Namespace('cd-track-list');
$session->a = array('First Track', 'Second Track');

foreach($session as $key => $value {
   // $key is 0 -> but should be 123
   // $value is array('First Track', 'Second Track');
}
于 2013-03-21T12:56:50.107 に答える