Not logged in. · Lost password · Register
Forum: Non-English Discussion German discussion RSS
Wie und wo sollte man am besten eine globale PHP-Funktion definieren?
Avatar
Michaelsy #1
Member since Jun 2015 · 969 posts · Location: Düsseldorf, Germany
Group memberships: Members
Show profile · Link to this post
Subject: Wie und wo sollte man am besten eine globale PHP-Funktion definieren?
Wie man hier https://forum.dokuwiki.org/post/66594 nachlesen kann, soll das PHPWikify-Plugin dazu verwendet werden, um eine bestimmte Funktionalität zu realisieren. Das soll so bewerkstelligt werden, indem das PHPWikify-Plugin im Wesentlichen nur für die Parameterübergabe verwendet wird, um darin dann eine global definierte, benutzerspezifische PHP-Funktion aufzurufen. (Wenn man so will, eine Art Plugin für Arme.  :-) )

Die Frage ist nun, wie und wo sollte man am gescheitetsten diese Funktion definieren?

Vielen Dank im Voraus - Michael Sy.
By Patreon.com a few eurons can be fed into the code phasers of
the DokuWiki engine. Besides, Andi's posts are worth reading.
Avatar
turnermm (Moderator) #2
Member since Oct 2009 · 4702 posts · Location: Canada
Group memberships: Global Moderators, Members, Super Mods
Show profile · Link to this post
Du kannst ein leeres Aktions-Plugin mit einer leeren Klasse definieren und es außerhalb der Klasse definieren.


<?php
function michaelsy debug($data) {

  if (!$handle = fopen(DOKU_INC .'turnerm_debug.txt', 'a')) {
    return;
    }
  if(is_array($data)) {
     $data = print_r($data,true);
  }
    // Write $somecontent to our opened file.
    fwrite($handle, "$data\n");
    fclose($handle);

}

class action_plugin_michaelsy extends DokuWiki_Action_Plugin {

}
?>

Keine Ahnung, ob es DokuWiki legal ist, aber . . .
Myron Turner
github: https://github.com/turnermm
plugins, templates: http://www.mturner.org/devel
Avatar
andi (Administrator) #3
User title: splitbrain
Member since May 2006 · 3474 posts · Location: Berlin Germany
Group memberships: Administrators, Members
Show profile · Link to this post
In reply to post #1
Quote by Michaelsy:
eine Art Plugin für Arme.  :-) )

Warum nicht einfach ein richtiges Plugin? Wenn du eh code schreiben willst, dann mach es doch lieber richtig anstatt den globalen namensraum zuzumüllen...
Read this if you don't get any useful answers.
Lies dies wenn du keine hilfreichen Antworten bekommst.
Avatar
Michaelsy #4
Member since Jun 2015 · 969 posts · Location: Düsseldorf, Germany
Group memberships: Members
Show profile · Link to this post
Quote by andi on 2019-06-28, 14:00:
Warum nicht einfach ein richtiges Plugin? Wenn du eh code schreiben willst, dann mach es doch lieber richtig
Wenn du damit sagen willst, dass ein "richtiges" Plugin immer und in jedem Fall die bessere Lösung darstellt, diese Meinung teile ich nicht.

Wie sieht es zum Beispiel mit dem Prinzip der Einfachheit aus, das gerade du (zu recht) hochhältst? Man kann ja über meinen Lösungsansatz sagen, was man will, aber einfach ist er auf jeden Fall.

Und er ist zugleich sehr leistungsfähig, da dem Vorlagenersteller sämtliche PHP-Möglichkeiten zur Verfügung stehen. Der von dir hier skizzierte Ansatz in einem Template Platzhalter auszutauschen, hat dagegen eine eher beschränkte Leistungsfähigkeit. (Da in MediaWiki im Wikitext programmierähnliche Kontrollstrukturen möglich sind, auf die dann der  Vorlagenersteller natürlich auch zugreifen kann, fällt dort dieser Aspekt weit weniger ins Gewicht. Und natürlich kann man den Leuten dort (bei Wikipedia) nicht anbieten, in PHP zu programmieren...)

Quote by andi on 2019-06-28, 14:00:
anstatt den globalen namensraum zuzumüllen...
Um dieses Problem zu vermeiden, dafür eben gibt es ja Namensräume...
Das ist also nicht zwangsläufig mit meiner Lösung verbunden.
By Patreon.com a few eurons can be fed into the code phasers of
the DokuWiki engine. Besides, Andi's posts are worth reading.
This post was edited on 2019-06-30, 11:12 by Michaelsy.
Close Smaller – Larger + Reply to this post:
Verification code: VeriCode Please enter the word from the image into the text field below. (Type the letters only, lower case is okay.)
Smileys: :-) ;-) :-D :-p :blush: :cool: :rolleyes: :huh: :-/ <_< :-( :'( :#: :scared: 8-( :nuts: :-O
Special characters:
Go to forum
Imprint
This board is powered by the Unclassified NewsBoard software, 20150713-dev, © 2003-2015 by Yves Goergen
Current time: 2019-09-23, 15:34:10 (UTC +02:00)