我正在尝试创建一个会话变量并将数组中的值分配给此会话变量。 我该怎么做。我正在像下面这样创建,但我根本无法到达它的功能。
$post = Zend_Controller_Front::getInstance()->getRequest()->getParam('key');
$searches = new Zend_Session_Namespace('searches');
$parthis= $searches->partssearched;
if(!is_array($parthis)){
$parthis->toArray();
$parthis[0]=$post;
} else {
$count= sizeof($parthis)."<br>";
if ($this->rows ) {
if ($count==0) {$parthis[0]=$post;}
//$searches[$count]=$this->rows;
echo $parthis[0]."HERE";
} else {
$parthis[$count]=$post;
foreach($parthis as $hist) {
echo $hist;
}
}
}
$this->rows
来自控制器,它携带数据库查询结果。
我在这里要做的是我想将 Get 值存储到一个会话变量中,将其作为数组携带。
应该像$parthis= array (value1, value2, value3);
每次用户在 URL 中传递值时,它都应该加起来。
谢谢
你可以
像下面这样使用
$this->objSess = new Zend_Session_Namespace('searches');
$details[$ItemID]=array(
'itmeid'=>$ItemID,
'itemname'=>$itemname['ItemName'],
'qty'=>$Quantity,
'price'=>$Price,
'originalprice'=>$itemname['OriginalPrice'],
'saveprice'=>number_format($itemname['OriginalPrice']*$Quantity,2),
'restaurantid'=>$RestaurantID,
'Conversionsymbol'=>$conversionsymbol,
'ConversionRate'=>$currencyrate,
);
$this->objSess->ORDERITEMS=$details;
或者您也可以使用其他方式
$this->objSess->ORDERITEMS[$ItemID]['qty']=$details[$ItemID]['qty'];
$this->objSess->ORDERITEMS[$ItemID]['price']=$details[$ItemID]['price'];
希望这肯定会对您有所帮助
我认为您正在尝试这样做。
$key = Zend_Controller_Front::getInstance()->getRequest()->getParam('key');
$searches = new Zend_Session_Namespace('searches');
if (!is_array($searches->partssearched)) {
$searches->partssearched = array($key);
} else {
array_push($searches->partssearched, $key);
}
这将创建和更新您的阵列,您可以通过以下方式查看它print_r($searches->partssearched);
如果你在操作中写这个,你可以使用它代替第一行。
$key = $this->getRequest()->getParam('key');