erstmal hallo zusammen. ist mein erster post hier.
zu meinem problem. ich arbeite gerade an einem script, das aus einer mehrfach verketteten liste besteht. hier das script:
<?php
class Story {
var $id;
var $parent_id;
var $children;
var $author_name;
var $story;
var $timestamp;
var $title;
function Story($id, $parent_id) {
$this->id = $id;
$this->parent_id = $parent_id;
$this->children = array();
$this->author_name = "name".$id;
$this->story = "story".$id;
$this->timestamp = "ts".$id;
$this->title = "title".$id;
}
function addChild($story) {
if ($story->parent_id == $this->id) {
array_push($this->children, $story);
} else {
foreach ($this->children as $child) {
$child->addChild($story);
}
}
}
}
$root = new Story(0, NULL);
$story1 = new Story(1, 0);
$root->addChild($story1);
$story2 = new Story(2, 0);
$root->addChild($story2);
$story3 = new Story(3, 0);
$root->addChild($story3);
$story4 = new Story(4, 3);
$root->addChild($story4);
print_r($root);
?>
$root ist die wurzel des Baumes des Baumes. Über addChild füge ich jeweils einen Kindknoten hinzu. Er wird dann anhand von $parent_id in des Baum einsortiert. $parent_id ist die id des Vaterknotens.
zu hause auf meinem testserver (php 5) arbeitet alles so wie erwartet. nur wenn ich das script auf einen anderen server (php 4) lade, wird $story4 nirgendwo einsortiert. (in diesem beispiel ist das der einzige knoten, der nicht direkt unter der wurzel hängt)
hat hier vielleicht jemand eine idee, woran das liegen könnte? ich weiß echt nicht mehr weiter.
schöne grüße,
Thomas
zu meinem problem. ich arbeite gerade an einem script, das aus einer mehrfach verketteten liste besteht. hier das script:
<?php
class Story {
var $id;
var $parent_id;
var $children;
var $author_name;
var $story;
var $timestamp;
var $title;
function Story($id, $parent_id) {
$this->id = $id;
$this->parent_id = $parent_id;
$this->children = array();
$this->author_name = "name".$id;
$this->story = "story".$id;
$this->timestamp = "ts".$id;
$this->title = "title".$id;
}
function addChild($story) {
if ($story->parent_id == $this->id) {
array_push($this->children, $story);
} else {
foreach ($this->children as $child) {
$child->addChild($story);
}
}
}
}
$root = new Story(0, NULL);
$story1 = new Story(1, 0);
$root->addChild($story1);
$story2 = new Story(2, 0);
$root->addChild($story2);
$story3 = new Story(3, 0);
$root->addChild($story3);
$story4 = new Story(4, 3);
$root->addChild($story4);
print_r($root);
?>
$root ist die wurzel des Baumes des Baumes. Über addChild füge ich jeweils einen Kindknoten hinzu. Er wird dann anhand von $parent_id in des Baum einsortiert. $parent_id ist die id des Vaterknotens.
zu hause auf meinem testserver (php 5) arbeitet alles so wie erwartet. nur wenn ich das script auf einen anderen server (php 4) lade, wird $story4 nirgendwo einsortiert. (in diesem beispiel ist das der einzige knoten, der nicht direkt unter der wurzel hängt)
hat hier vielleicht jemand eine idee, woran das liegen könnte? ich weiß echt nicht mehr weiter.
schöne grüße,
Thomas
Kommentar