T-Rex: Pear installer, PHPdoc lauffähig gestallten

Moin,

ich werde hier noch wahnsinnig... seit 4 Stunden versuche ich PHPdoc bei mir zum laufen zu bekommen.

1. PHPdoc ist bei meinem Xampp eigentlich vorinstalliert. Ich kann es jedoch leider nicht aufrufen bzw. hab ich keine Ahnung wie ich es aufrufen soll.

2. Das runterladen mittels pear funktioniert nicht, da der pear befehl nicht erkannt wird. Wobei ich hier auch enorme Verständnis Schwierigkeiten habe. Unter Windows gehe ich mit dem Konsolentool in das php Verzeichnis und rufe einfach mal pear -h auf. statt der Hilfe bekomme ich den Fehler, dass der Befehl nicht erkannt wird.

3. Also lade ich mir alles per zip runter. Ich entpacke das ganze und pass in der .bat Datei die entsprechenden Stellen an (so wie es in der Doku steht). Es sei zudem angemerkt das hier wenigstens eine .bat Datei vorhanden ist, anders als in dem xampp Ordner.
Dann führe ich es aus und es läuft sogar. Nur das was da so zusammen gebaut wird passt nicht :(. Anstatt das mir Autor (und alle anderen Metatags) so schön aufgelistet werden wie in den Beispielen, wird alles zu einem einzigen riesigen String zusammen gequetscht. Wirklich brauchbar ist sowas echt nicht.

4. Ich versuche eine Umgebungsvariable für phpdoc zu setzen. Also so das ich nur phpdoc eingeben muss und phpdoc egal in welchem Verzeichnis ich bin aufgerufen wird. Nach 7 mal neustarten hab ich endlich geschnallt wie man eine "Path" Variable setzt. wenn ich jetzt einfach phpdoc in die Konsole eintippe ruft der auch tatsächlich phpdoc auf. Nur...wenn ich in einem fremden Verzeichnis bin bekomme ich als schöne Meldung "could not open input file phpdoc".

Ich weiß meine Probleme sind etwas konfus. Und ja ich stelle mich in der Hinsicht echt dämlich an. Um das ganze ein wenig zu strukturieren hier meine Fragen:

  • Wie kann ich unter pear etwas installieren? bzw. wie kann ich pear überhaupt installieren oder checken ob es installiert ist oder noch besser wie rufe ich es den überhaupt auf...wwwaaaahhhhh?
  • wie bekomme ich PHPdoc unter xampp zum laufen
  • wie bekomme ich generell PHPdoc zum laufen, wieso werden die Sachen nicht richtig geparst
  • gibt es vielleicht eine alternative zu PHPdoc? Von einem bekannten habe ich gehört das Javadoc besser sein soll und auch PHP Dateien versteht?

Die Fragen sind eigentlich rein Interesse halber. Am Ende will ich eigentlich nur ein Tool was mir eine effektive Dokumentation zusammen baut.

Danke

Gruß
der total unfähige
T-Rex

  1. Die Fragen sind eigentlich rein Interesse halber. Am Ende will ich eigentlich nur ein Tool was mir eine effektive Dokumentation zusammen baut.

    In dem Fall schau dir mal ApiGen an.
    Wird aus der Kommandozeile aufgerufen und erzeugt ne IMO bessere Doku als phpDOC. Alternativ schau dir DocBlox an. Wird vom Zend-Framework genutzt, ich finde ApiGen aber besser.

    Ein Nachteil (keine Ahnung ob das bei phpdoc auch so ist), wenn eine Datei keine Klasse enthält, erscheint die Datei nicht als Package in der Doku. Ist bei DocBlox und ApiGen so. Da ich mittlerweile alles auf OOP umgestellt habe, ist das, zumindest für mich, kein Problem.

    1. Runter geladen, entpackt aufgerufen und bäm... 'Der Befehl ""php.exe"" ist entweder falsch geschrieben oder konnte nicht gefunden werden.'

      Also wenn das eine Standalone Version ist, dann ist sie kaputt oder ich wieder zu doof. Wahrscheinlich muss man wieder irgendeine dumme config Datei anpassen oder das ganze Verzeichnis in das php Verzeichnis schieben, was weiß ich...

      Gruß
      Kopf küsst Tischplatte
      T-Rex

      1. Runter geladen, entpackt aufgerufen und bäm... 'Der Befehl ""php.exe"" ist entweder falsch geschrieben oder konnte nicht gefunden werden.'

        Dann hast du php.exe nicht in deinem Pfad. Da das aber der Normalzustand ist, würde ich den Fehler in deinem System suchen ;)

        Also entweder den vollen Pfad zur php.exe nutzen oder im Path verfügbar machen

        1. Jap du hast vollkommen recht. Als ich den Pfad in der .bat Datei richtig auf php.exe gesetzt hab hat es funktioniert :).
          Aber... er erkennt einfach gar nichts. Klassen ja, Methoden nein.

          Ich hab mir das Nella Framework runtergeladen und hab das mal durch den apigen laufen lassen. Sollte ja eigentlich das gleiche bei rauskommen als bei den Examples...aber nein. Hab das ganze jetzt mal auf meine Webserver hochgeladen. Hier eine Beispieldatei:
          Bei mir ist die Datei leer
          so sollte es aussehen
          So ungefähr sah es auch bei PHPdoc aus.

          Einfach knopp drücken und los gehts...wieso schaffen das nur so wenige?

          Gruß
          rätselnder
          T-Rex

          PS: Ich lass die Doku für 24 Stunden auf meinem Server. Also nicht wundern wenn der Link in 2 Tagen nicht mehr geht.

          1. Du solltest Apigen mit zusätzlichen --debug Parameter aufrufen und schauen ob damit relevante Fehler/Informationen ausgegeben werden.

          2. Bei mir sieht der Aufruf so aus:

            php ../apigen/apigen.php \ --source . \ --destination ../path/to/docs \ --title "MyTitle" \ --allowed-html s \ --todo yes \ --deprecated yes \ --debug yes

            Steht (fast genauso) in einem Shell-Script. Und erzeugt auch die Doku für Methoden. Und bei meinen Scripten funktionieren phpdoc, apigen und docblox  gleich.
            Da ich unter Windows aber kein PHP nutze, kann ichs da nicht testen. Kann natürlich sein, dass die php.ini irgendwelche Einstellungen hat, die Probleme machen.

        2. Hallo,

          Runter geladen, entpackt aufgerufen und bäm... 'Der Befehl ""php.exe"" ist entweder falsch geschrieben oder konnte nicht gefunden werden.'
          Dann hast du php.exe nicht in deinem Pfad. Da das aber der Normalzustand ist, ...

          ja, auf einem Windows-System halte ich es auch für den Normalfall, dass das PHP-Verzeichnis nicht im Suchpfad ist. Außer vielleicht bei denen, die PHP außerhalb von Webseiten intensiv nutzen. Dürfte aber in der Windows-Welt eine sehr kleine Gruppe sein ...

          Also entweder den vollen Pfad zur php.exe nutzen oder im Path verfügbar machen

          Genau.

          Ciao,
           Martin

          --
          Man gewöhnt sich an allem, sogar am Dativ.
          Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
  2. Hi,

    1. Das runterladen mittels pear funktioniert nicht, da der pear befehl nicht erkannt wird. Wobei ich hier auch enorme Verständnis Schwierigkeiten habe. Unter Windows gehe ich mit dem Konsolentool in das php Verzeichnis und rufe einfach mal pear -h auf. statt der Hilfe bekomme ich den Fehler, dass der Befehl nicht erkannt wird.

    nutze die Befehle inkl. Endung .bat, also z.B. pear.bat

    Bis die Tage,
    Matti

    1. nutze die Befehle inkl. Endung .bat, also z.B. pear.bat

      Bis die Tage,
      Matti

      hmpf das funktioniert sogar... mal nebenbei es enttäuscht mich als Windows Kind doch sehr das die meisten Tutorials mit Linuxbefehlen daher kommen.

      Also phpdoc.bat behebt das Problem, dass ich jetzt auf jeden Fall das phpdoc welches mit xampp mitgeliefert wurde benutzen kann. Dieses wiederum wirft aber leider genau den selben Fehler wie das, was ich selbst runtergeladen habe - "could not open input file: phpdoc"?

      Gruß
      Pear Hasser
      T-Rex

      1. Also phpdoc.bat behebt das Problem, dass ich jetzt auf jeden Fall das phpdoc welches mit xampp mitgeliefert wurde benutzen kann. Dieses wiederum wirft aber leider genau den selben Fehler wie das, was ich selbst runtergeladen habe - "could not open input file: phpdoc"?

        Nee stop Kommando zurück... das phpdoc.bat hat sich aufgrund der Umgebungsvariable immer noch auf das von mir installierte phpdoc bezogen. Deshalb ist es auch der gleiche Fehler. Das Xampp phpdoc hat nicht mal eine phpdoc.bat Datei. Installieren kann ich es laut pear auch nicht... echt toll dieses Pear

        Gruß
        immer noch Pear hassender
        T-Rex

        1. immer noch Pear hassender

          Schonmal überlegt, Linux zu nutzen? Es ist immer schwierig, pure Linux kinder nach Windows zu portieren.

          Zumindest Colinux oder Cygwin solltest du dir mal ansehen, besser noch, du machstr deine Webentwicklung unter einem System, unter dem auch reale Webserver laufen, also Linux (Suse, Debian, Fedora dürften die häufigsten sein) und LAMP

          1. Ich will einfach nur ein PHPDoc oder vergleichbares. Deshalb soll ich das Betriebsystem wechseln? Wenn der Aschebecher klemt kaufst du dir hoffentlich kein neues Auto ;).

            Gruß
            heute ist alles doof
            T-Rex

            1. Ich will einfach nur ein PHPDoc oder vergleichbares. Deshalb soll ich das Betriebsystem wechseln? Wenn der Aschebecher klemt kaufst du dir hoffentlich kein neues Auto ;).

              Das BS wechseln ist nicht nötig. Eine Virtualisierung Deiner Wahl(VirtualBOX, VMWare) + ein Debian Image tut es. Je mehr Du ins Detail gehst mit Deinen Anforderung, umso mehr wirst damit Zeit sparen, auch wenn es zunächst oversized klingen mag. Mit jedem Detail des Stacks wird es unter Windows komplizierter, mit nem virtualisierten Debian klatschst Du ein kurz ergoogltes "aptitude install foo" in die Befehlszeile und es läuft.

              1. Nun gut, will ich dir mal vertrauen... werd ich morgen mal versuchen ein Virtuelles meiner Wahl auf zu setzen ... ohje... freut euch shconmal auf tausend neue eröffnete Topics von mir...

                Gruß
                unruhig schlafender
                T-Rex

            2. Deshalb soll ich das Betriebsystem wechseln?

              Nein, deshalb hab ich ja CoLinux und Cygwin erwähnt. Damit läuft Linux nativ als Service unter Windows.

              1. Hallo,

                Deshalb soll ich das Betriebsystem wechseln?
                Nein, deshalb hab ich ja CoLinux und Cygwin erwähnt. Damit läuft Linux nativ als Service unter Windows.

                Cygwin ist AFAIK kein Linux, sondern bildet nur einen Teil des Linux-APIs auf Windows ab. Es ist damit ähnlich wie WINE nur eine Kompatibilitätsschicht. Mit Linux hat's aber nur insofern zu tun, als es die Schnittstelle nachbildet.

                CoLinux ist dagegen wirklich ein virtualisierter Linux-Kernel, der unter Windows läuft.

                Ciao,
                 Martin

                --
                Hannes würfelt abends immer, ob er den Abend mit seiner Frau zuhause verbringt oder in die Kneipe geht. Wenn er eine 6 würfelt, geht er in die Kneipe.
                Gestern musste er 37mal würfeln.
                Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
                1. Hab Cygwin nie benutzt, nur mal (weil auf dem Rechner Windows benutzt werden musste) CoLinux, damit ich Quanta laufen lassen konnte.

                  Deshalb würde ich immer CoLinux vorziehen.

                  Danke, ich hab wieder was gelernt. Den Unterschied wusste ich bisher nicht.

            3. Ich will einfach nur ein PHPDoc oder vergleichbares. Deshalb soll ich das Betriebsystem wechseln? Wenn der Aschebecher klemt kaufst du dir hoffentlich kein neues Auto ;).

              Dann behalte f**** Windows. UND installiere Linux:

              Virtuelle Maschine gibt es für lau.
              Linux. Gibt es für lau.
              Putty. Gibt es für lau.
              Winscp. Gibt es für lau.
              Notepad ++ - gibt es für lau.

              Du installierst die virtuelle Maschine. Dann Linux und zwar ohne grafische Oberfläche. Das spart Speicher, die virtuelle Maschine kommt dann mit 256-512 MB Arbeitsspeicher und 6 G Plattenplatz locker(!) hin.

              Befehle kannst per SSH absetzen, Dateien mit Winscp transportieren, mit Notepad++ editieren.

              Mit dem Xampp kannst Du ewig fummeln, weil die Jungs (nicht) alle Pfade verbiegen... und bei Deinem Kenntnisstand ist es besser, wenn Du gleich eine praktikablere Lösung anstrebst als damit zu experimentieren.

              Fred