_Info:
Rechtliche Hinweise findet Ihr im Impressum (Credits): hier klicken.
Im Allgemeinen kann hier auch gesagt werden, dass die Scripte Überwiegend für den Einsatz auf Ohost und Funpic gedacht sind. Das heißt, dass die Skripte eigentlich überall laufen sollten!
_ Übersicht » PHP und MySQL » Plugins laden »
Plugins laden
Erstellt von Christian Schubert am 2009-11-01 12:36:18
Ihr kennt das sicherlich. Man hat Tausende Funktionen, die als Plugin für eure Homepage gedacht sind. Was macht man da im Normalfall? Richtig, man includiert sie:
- <?php
- include "funktion_a.php";
- include "funktion_b.php";
- include "funktion_c.php";
- include "funktion_d.php";
- include "funktion_e.php";
- include "funktion_f.php";
- /* Aufführung der Funktionen */
- ?>
Nun versaut die aber die Übersichtlichkeit und macht den Quellcode unnötig lang.
Nun kann man auch alle Funktionen in einer Klasse tun, was aber bei einem Plugin wenig Sinn macht.
Hier kommt nun meine Funktion ins Spiel. Ihr müsst nur noch eine Funktion includieren (oder wie ich das mache, eine Methode laden). Im Beispiel mache ich das mit include
Als erstes kommen wir zu der Funktion, die wie folgt aussieht:
- <?php
- # @filename: loadPlugin.php
- function loadPlugin($plugin,$action){
- }else{
- include PLUGIN_PATH.$plugin.".php";
- }
- }
- return $out;
- }
- ?>
Nun müsst Ihr eure Funktionen in einer Datei speichern, die exakt genauso heißt, wie die Funktion. In meinem Beispiel handelt es sich um die Funktion
foo().- <?php
- # @filename: foo.php
- function foo($parm){
- return $parm;
- }
- ?>
Aufrufen der Funktion foo():
- <?php
- # @filename: index.php
- include PLUGIN_PATH."loadPlugin.php";
- ?>
Nun wird einfach nur bar ausgegeben. (oder halt das, was Ihr anstelle von bar eingegeben habt.)
Wenn man nun aber mehrere Parameter an die Funktion übergeben möchte, macht man dies mit einem Array. Hierzu schreiben wir einfach noch einige Parameter zu der Funktion foo() hinzu:
- <?php
- # @filename: foo.php
- function foo($parm1,$parm2,$parm2="Leer"){
- return $parm1." | ".$parm2." | ".$parm3;
- }
- ?>
- <?php
- # @filename: index.php
- include PLUGIN_PATH."loadPlugin.php";
- #Ausgabe: Parm1 | Parm2 | Leer
-
- #Ausgabe: Parm1 | Parm2 | Parm3
- ?>
Wenn man will, kann man nun auch noch die Plugins Regestrieren oder ein "Ein/Aus-Schalter" einbauen. Dies kann man über mehrere Umwege machen. Ich mache mir das ganz einfach und benne die Funktion die deaktiviert erden soll um. (Aus foo.php wird dann _foo.php) In den Meisten fällen kann dort aber eine Fehlermeldung kommen. Oder wenn ihr (z.B.) eure BB-Code Funktion so ausführt, gibt es ebend keine Ausgabe mehr.
Dateianhänge:
| Dateiname | Dateigröße | MIME-Typ | Letzte Änderung |
|---|---|---|---|
| index.php | 473 Bytes | application/x-httpd-php | 28.01.2010, 11:01 CET |
| foo.php | 120 Bytes | application/x-httpd-php | 28.01.2010, 11:01 CET |
| loadPlugin.php | 120 Bytes | application/x-httpd-php | 28.01.2010, 11:01 CET |
_Kommentare zum Artikel:
Schreibe jetzt selbst einen...














