これはcontroller.phpの私のコードです
if(!isset(Yii::app()->session['cart_values'])) {
Yii::app()->session['cart_values'] = array();
}
$sessionCart = array();
$sessionCart[] = array('product_id' => Yii::app()->session['productID'], 'document' => Yii::app()->session['productName']);
Yii::app()->session['cart_values'] = $sessionCart;
私の問題は、結果をエコーしようとすると、選択した最後のレコードしか得られないことですが、必要なのは、このセッションで選択されたすべてのレコードです。アレイのファイリングを開始する前にチェックを行う必要があることはわかっていますが、その方法がわかりません。
<?php
if (is_array(Yii::app()->session['cart_values']))
{
foreach ( Yii::app()->session['cart_values'] as $value) {
echo $value['document'];
}
}
?>
自分なりに理解したいのですが、困っているので、どなたか教えていただけると助かります。ありがとう。
PS私の英語で申し訳ありませんが、誰もが私を理解してくれることを願っています.
++++++++++++++++++++++++++++++++++++++++++++++++++++ +++++++
私は自分で解決策を見つけました。皆さんに感謝します。コントローラーのphpスクリプトは次のようになります。
if(!isset(Yii::app()->session['cart_values'])) {
Yii::app()->session['cart_values'] = array();
} else {
$sessionCart = Yii::app()->session['cart_values'];
$sessionCart[] = array('product_id' => Yii::app()->session['productID'], 'document' => Yii::app()->session['productName']);
Yii::app()->session['cart_values'] = $sessionCart;
}