bonehunter: Source von PERL > PHP

Beitrag lesen

Hallo Selfforum,

ich hab ein Problem.

Ich hab einer Bekannten versprochen, ihr ein Script von Perl nach PHP umzuwandeln. Ich hab jetzt eigentlich das meiste geschaft, bis auf einen Kleinen Teil.

Das Script um das es geht ist eine interaktive Geschichte, bei der die Besucher mitschreiben können. Die Geschichte hat einen gemeinsamen Anfang(kapitel 1) und zwei antwortmöglichkeuten. Zu jeder dieser Antwortmäöglichkeiten kann jetzt der Besucher eine fortführung der Geschichte (Kapitel 2) mit weiteren 2 Antwortmöglichkeiten schreiben usw.

Jetzt gibt es für diese Geschichte auch eine Kapitelübersicht die ungefähr so aussieht:

Kapitel 1
  Kapitel 2
    Kapitel 3
     Kapitel 4
       Kapitel 5
     Kapitel 4
    Kapitel 3
     Kapitel 4
     Kapitel 4
  Kapitel 2
    Kapitel 3
     Kapitel 4
     Kapitel 4
    Kapitel 3
     Kapitel 4
     Kapitel 4
.....

Und daran verzweifle ich. Ich verstehe das einfach nicht und kann es also auch nicht in PHP umsetzen. Bitte helft mir dabei, ich möchte icht, dass die ganze Arbeit bisher umsonst war. Kenne mich leider nicht besonders gut in Perl aus.

Hier noch der Quelltext:

outline_tree(1, 1);

sub outline_tree {
   if (-e "$story_dir/$_[0].txt") {

$auth = "";
      $title = "";
      $time = "";

if (open(CHAPTER, "$story_dir/$_[0].txt")) {
         $auth = <CHAPTER>;
  $time = <CHAPTER>;
  $title = <CHAPTER>;
         close(CHAPTER);

chomp($auth);
         chomp($title);
         chomp($time);
         if ($auth ne "") {
            $auth = "von $auth";
         }
      }

print "   " x ($_[1] - 1);
      $x = format_chapter_number($_[1] - 1);
      print "Kapitel $_[1]: <a href="story.pl?next=$_[0]&chapter=$x">$title</a> $auth";

outline_tree(2 * $_[0], $_[1] + 1);
      outline_tree((2 * $_[0]) + 1, $_[1] + 1);

$chapter_count++
   }
}

sub format_chapter_number {
   my $my_chapter_number = $_[0];   # Parameter is chapter number.
   return(sprintf("%.0f", $my_chapter_number));
}

mfg bonehunter