Hallo,
ich habe hier mehrere Klassen geschrieben und scheitere momentan am Löschen eines Objektes.
Folgender Sachverhalt: Ich habe eine Reihe von Gruppierungsblöcken. In diesen Blöcken können Frageblöcke drin sein. Diese wiederum setzen sich aus einzelnen Fragen zusammen.
Klassen die ich geschrieben hab: group.class.php, block.class.php, question.class.php
Nun habe ich in der Klasse Gruppe (group) die zugehörigen Blöcke als Array definiert. Das hinzufügen ist somit einfach, allerdings funktioniert mein Löschen eines Blockes nicht. Ich finde keinen Fehler, da ich auch relativ neu in OOP bin.
hier mal die Klasse group.class.php
Alles anzeigen
P.S. alle echos sind Testausgaben, PHP4 muss sein, ist ne Vorgabe vom Server/Auftraggeber
Danke im Voraus
ich habe hier mehrere Klassen geschrieben und scheitere momentan am Löschen eines Objektes.
Folgender Sachverhalt: Ich habe eine Reihe von Gruppierungsblöcken. In diesen Blöcken können Frageblöcke drin sein. Diese wiederum setzen sich aus einzelnen Fragen zusammen.
Klassen die ich geschrieben hab: group.class.php, block.class.php, question.class.php
Nun habe ich in der Klasse Gruppe (group) die zugehörigen Blöcke als Array definiert. Das hinzufügen ist somit einfach, allerdings funktioniert mein Löschen eines Blockes nicht. Ich finde keinen Fehler, da ich auch relativ neu in OOP bin.
hier mal die Klasse group.class.php
Quellcode
- <?php
- /*
- * Klassenname: group.class.php
- */
- include('block.class.php');
- class Group{
- var $groupID;
- var $blocks;
- var $blockNumber;
- var $name;
- function Group($id = 0, $b = '', $n = ''){
- $this->groupID = $id;
- if(empty($b)){
- $this->blocks = array();
- $this->blockNumber = 0;
- } else {
- $this->blocks = $b;
- $this->blockNumber = count($b);
- }
- $this->name = $n;
- }
- function setID($id){
- $this->groupID = $id;
- }
- function getID(){
- return $this->groupID;
- }
- function addBlock($b){
- $this->blocks[] = $b;
- $this->blockNumber++;
- }
- function getBlocks(){
- return $this->blocks;
- }
- function &getBlock($id){
- foreach($this->blocks as $key => $val){
- if($val->getID() == $id){
- return $val;
- }
- }
- }
- function setName($n){
- $this->name = $n;
- }
- function getName(){
- return $this->name;
- }
- function delBlock($id){
- foreach($this->getBlocks() as $key => $val){
- if($val->getID() == $id){
- $block =& $this->getBlock($id);
- echo "lösche: ".$block->getName();
- unset($block);
- }
- }
- $this->blockNumber--;
- printr($this->blocks);
- }
- }
- ?>
P.S. alle echos sind Testausgaben, PHP4 muss sein, ist ne Vorgabe vom Server/Auftraggeber
Danke im Voraus