我有一个名为 MyCart 的类。
Class MyCartClass
{
var $MyCart;
function getCart(){
return $this->MyCart;
}
function addItem($item){
if ($this->MyCart){
$this->MyCart .= ','.$item;
}
else{
$this->MyCart = $item;
}
}
};
$globalCart = new MyCartClass; // create an instance of the class
变量 "$MyCart"
是一个包含购物车中所有商品的字符串,以逗号分隔。
现在,我将此类保存到名为 "cart.php"
的文件中,并将其包含在另一个文件中。
但是,每次我调用函数 "addItem"
时,if 语句都会转到 else 分支,这意味着 "$MyCart"
变量不包含购物车的当前状态。
我需要将购物车的状态存储到“ session ”变量中吗? 因为这样可以肯定地从所有文件访问它..
如有任何帮助,我将不胜感激!
谢谢。
最佳答案
不要使用字符串来存储列表。这只是个坏主意。
相反,将$items
存储为数组,并在构造函数中定义它
class Cart {
function __construct() {
$this->items = array();
}
function add($item) {
$this->items[] = $item;
}
function save() {
$SESSION["cart"] = $this->items;
}
function get_items_string() {
return join(",", $this->items);
}
}
我的 PHP 有点生疏,但这应该可以帮助您入门。
关于php类变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6265489/