Ankündigung

Einklappen
Keine Ankündigung bisher.

Struktur einer PHP-Seite

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Struktur einer PHP-Seite

    Hallo Zusammen

    Mich würde es wundernehmen wie ihr es so handhabt mit der Struktur eurer PHP-Dokumente und Seiten.

    Ich persönlich habe einen index.php in den ich dann alle Klassen reinlade, eigentlich noch ganz normal. Danach beginnt mein Problem. Wie teilt ihr die Klassen auf und wie haltet ihr bei euch Ordnung? Bei mir ists am Schluss meistens ein ziemliches Chaos.

    Gruss

  • #2
    Vielleicht solltest du dir mal das MVC-Modell angucken...

    Kommentar


    • #3
      ok. danke für den Tipp.

      Kommentar


      • #4
        Mann kann sich auch mal bei ein paar Frameworks umschauen wie bei denen die üblichen Projekt Strukturen sind:

        Symfony
        symfony | Web PHP Framework | The Definitive Guide to symfony | Chapter 2 - Exploring Symfony's Code
        Zend Framework:
        Zend Framework Default Project Structure - Wil Sinclair - Zend Framework Wiki

        Auch wenn die oft recht speziell sind kann man sich da ab und an auch ohne Benutzung eines Frameworks ein paar Ideen abgucken.

        Ich finde es z.b. relevant, dass eigentlich sämtlicher php-Code unterhalb des Document-Roots ist. Innerhalb des Doc-roots liegt nur eine .htaccess index.php und ein Ordner wo css/js/bilder und kram drin sind, ab und an kommt auch nochmal ne zusätzlcihe php-datei dazu, aber das ist eher selten.
        [URL="http://www.robo47.net"]robo47.net[/URL] - Blog, Codeschnipsel und mehr
        | :arrow: [URL="http://www.robo47.net/blog/192-Caching-Libraries-and-Opcode-Caches-in-php-An-Overview"]Caching-Klassen und Opcode Caches in php[/URL] | :arrow: [URL="http://www.robo47.net/components"]Robo47 Components - PHP Library extending Zend Framework[/URL]

        Kommentar


        • #5
          spannend. thx!

          ich habe aber eher an die struktur in den dokumenten selbst gedacht. wie teilst du das ganze halt auf (wie oben im MVC-Modell).

          Kommentar


          • #6
            Welche Klassen ?

            In meinem library-Ordner liegen bei mir alle Bibliotheken, Dinge wie z.b. das Zend Framework, eigene Komponenten die darauf aufbauen, html-purifier, geshi oder was auch immer, also alles was nicht direkt projektbezogen ist.

            Alle anderen Klassen die projekt-spezifisch sind, sind meist models und die liegen im model-verzeichnis der jeweiligen App
            [URL="http://www.robo47.net"]robo47.net[/URL] - Blog, Codeschnipsel und mehr
            | :arrow: [URL="http://www.robo47.net/blog/192-Caching-Libraries-and-Opcode-Caches-in-php-An-Overview"]Caching-Klassen und Opcode Caches in php[/URL] | :arrow: [URL="http://www.robo47.net/components"]Robo47 Components - PHP Library extending Zend Framework[/URL]

            Kommentar


            • #7
              ja, aber wenn ich klassen selbständig programmiere. =]

              Kommentar


              • #8
                Zitat von webproger Beitrag anzeigen
                ja, aber wenn ich klassen selbständig programmiere. =]
                Wo ist da der unterschied? Klassen die zum Programm gehören kommen in den Progammordner und Klassen die du in verschiedenen Programmen brauchst in einen gemeinsamen Ordner

                Kommentar


                • #9
                  Dann stellt sich die Frage wie du den Kram bündelst, sind das Klassen die Projektspezifisch sind ? oder sind es klassen die du bei jedem oder vielen Projekten nutzen kannst ?

                  Alles was ich mehrfach verwende wandert bei mir zu den Komponenten das ist meine kleine Sammlung die das Framework ergänzt.
                  [URL="http://www.robo47.net"]robo47.net[/URL] - Blog, Codeschnipsel und mehr
                  | :arrow: [URL="http://www.robo47.net/blog/192-Caching-Libraries-and-Opcode-Caches-in-php-An-Overview"]Caching-Klassen und Opcode Caches in php[/URL] | :arrow: [URL="http://www.robo47.net/components"]Robo47 Components - PHP Library extending Zend Framework[/URL]

                  Kommentar


                  • #10
                    hm... ok. aber wie organisierst du die klassen intern? die funktionen?

                    Kommentar


                    • #11
                      Zitat von webproger Beitrag anzeigen
                      hm... ok. aber wie organisierst du die klassen intern? die funktionen?
                      Wie meinst du? Sowas wie Präfixe (z.B. get und set) bei METHODEN (nicht das f-Wort )?

                      Kommentar


                      • #12
                        Zitat von webproger Beitrag anzeigen
                        hm... ok. aber wie organisierst du die klassen intern? die funktionen?
                        Das musst du mal genauer erklären was du damit meinst.
                        [URL="http://www.robo47.net"]robo47.net[/URL] - Blog, Codeschnipsel und mehr
                        | :arrow: [URL="http://www.robo47.net/blog/192-Caching-Libraries-and-Opcode-Caches-in-php-An-Overview"]Caching-Klassen und Opcode Caches in php[/URL] | :arrow: [URL="http://www.robo47.net/components"]Robo47 Components - PHP Library extending Zend Framework[/URL]

                        Kommentar


                        • #13
                          aber wie organisierst du die klassen intern? die funktionen?
                          ???
                          von oben nach unten und von links nach rechts:
                          Funktion 1
                          Funktion 2
                          Funktion 3
                          ...

                          Falls Funktionen einen Zusammenhang bilden -> eigene Klasse.
                          Eine if-else-Abfrage nimmt, ordentlich geschrieben eine Menge Platz weg. Platzsparend geht es mit einem ternären Operator.

                          Kommentar

                          Lädt...
                          X