sessName = $name. „_bskt“;
$this->sessQty = $name. „_qty“;
$this->initialise ();
}
// ----- Private Methoden -------------------------------------------------
//-Speicher die gegenwärtige Reihe in einer Lernabschnittvariable
//
privates Funktion updateBasket () {
$_SESSION [$this->sessName] = serialize ($this->basket);
$_SESSION [$this->sessQty] = serialize ($this->qty);
}
// initialisieren den Korb
//
private Funktion initialisieren () {
//-Überprüfung, wenn Lernabschnitt im Gang ist und wenn den vorhandenen Korb so zurückholen
//
wenn (isset ($_SESSION [$this->sessName]) && isset ($_SESSION [$this->sessQty])) {
$this->basket = unserialize ($_SESSION [$this->sessName]);
$this->qty = unserialize ($_SESSION [$this->sessQty]);
}
sonst {
$this->basket = Reihe ();
$this->qty = Reihe ();
$this->updateBasket ();
}
}
// ----- Allgemeine Methoden --------------------------------------------------
// leeren den Korb heraus
//
Funktionsfreier raum () {
unset ($_SESSION [$this->sessName]);
unset ($_SESSION [$this->sessQty]);
$this->initialise ();
}
// hinzufügen einen Gegenstand dem Ende der Liste n
//
//-Parameter: $item - ein gespeichert zu werden Gegenstand
// $num - eine gespeichert zu werden Quantität, Rückstellungen bis 1
//
Funktion addItem ($item, $num=1) {
// sicherstellen den Indexaufenthalt im Schritt thalt, indem es das höchste zurückholt
//-vorhandener Index und Erhöhen er
//
$ctr = Zählimpuls ($this->basket);
wenn ($ctr > 0) {
$lastKey = Ende (array_keys ($this->qty));
$ctr = $lastKey + 1;
}
$this->basket [$ctr] = $item;
$this->qty [$ctr] = $num;
$this->updateBasket ();
}
// entfernen ein Einzelteil von der Liste - durch die Korbzahl kennzeichnen.
//-ANMERKUNG, DASS DAS ENTFERNEN EINES EINZELTEILS NICHT DEN KORB ZURÜCKSTELLT, NUMMERIERT in den Reihen.
//
//-Parameter: $basketNumber - der Index der von der Reihe zu entfernen Reiheneintragung,
//
Funktion rmvItem ($basketNumber) {
wenn (Zählimpuls ($this->basket) > 0) {
Vor dem Versuch seines Abbaus, prüfen //-001, ob ein Einzelteil existiert
//
wenn (isset ($this->basket [$basketNumber] )) {
unset ($this->basket [$basketNumber]);
unset ($this->qty [$basketNumber]);
$this->updateBasket ();
}
}
}
//-Reichweite ein Einzelteil
//
//-Parameter: $basketNumber - der Index der von der Reihe zurückzuholenden Reiheneintragung
//
Funktion fetchItem ($basketNumber) {
wenn (Zählimpuls ($this->basket) > 0) {
Rückhol$this->basket [$basketNumber];
}
}
//-Reichweite ein Quantität für ein Einzelteil
//
//-Parameter: $basketNumber - der Index der von der Reihe zurückzuholenden Menge
//
Funktion fetchItemQuantity ($basketNumber) {
wenn (Zählimpuls ($this->qty) > 0) {
Rückhol$this->qty [$basketNumber];
}
}
//-Änderung ein gegebenes Einzelteil in der Liste
//
//-Parameter: $basketNumber - der Index des Gegenstandes zum Update
// $anItem - ein Gegenstand
//
Funktion chgItem ($basketNumber, $anItem) {
wenn ($basketNumber >= 0 && Zählimpuls ($this->basket) > 0) {
Vor dem Versuch seines Abbaus, prüfen //-001, ob ein Einzelteil existiert
//
wenn (isset ($this->basket [$basketNumber] )) {
$this->basket [$basketNumber] = $anItem;
$this->updateBasket ();
}
}
}
//-Änderung ein gegebene Einzelteilquantität in der Liste
//
//-Parameter: $basketNumber - der Index des Gegenstandes zum Update
// $qty - Die neue Quantität
//
Funktion chgQty ($basketNumber, $qty) {
wenn ($basketNumber >= 0 && Zählimpuls ($this->qty) > 0) {
Vor dem Versuch seines Abbaus, prüfen //-001, ob ein Einzelteil existiert
//
wenn (isset ($this->basket [$basketNumber] )) {
$this->qty [$basketNumber] = $qty;
$this->updateBasket ();
}
}
}
// erhalten eine Liste aller Einzelteile im Korb
//
Funktion fetchAllItems () {
Rückhol$this->basket;
}
// erhalten eine Liste aller Einzelteilquantitäten, die im Korb gespeichert
//
Funktion fetchAllQtys () {
Rückhol$this->qty;
}
// zurückbringt den Zählimpuls der Zahl Einzelteilen im Korb ngt
//
Funktion countBasket () {
Rückholarray_sum ($this->qty);
}
} //-Ende von Kategorie myBasket
|