over.unity hat geschrieben:
gwanjek hat geschrieben:Hallo,
Wie parametrisierst du deine Bibliotheksfunktionen? als Kommandozeilen-Argumente hinterm Dateinamen?
Da weiss ich nicht was Du damit meinst... Wenn Du damit mein FrameWork meinst, dann kann ich Dir noch keine Antwort dazu geben, da ich das FrameWork erst aufbaue.
Ich meine damit den Parameter "x" im SIN(x), also man wird ja wohl nicht je eine extra Funktion aufbauen für sin(30°), eine für sin(45°) usw..... bzw. hier: z.B. jeweils gesondert als externe PHP-Funktion ausgelagerte Funktionen "MaximalsollTempAbweichung(Wohnzimmer)" gegenüber "MaximalsollTempAbweichung(Kinderzimmer)".
"Wohnzimmer" und "Kinderzimmer" wären dann die Parameter der einzig vorhandenen externen Funktion "MaximalsollTempAbweichung(zimmer)", die man ja wohl nicht für jeden Raum nochmal neu schreiben will.
Üblicherweise werden die auch hier im PHP als Function-Parameter per dem Funktionsnamen in Klammern nachgesetzte Werte übergeben, also "funktion (para1, para2, ...);"
Wie würdest du sowas in deiner eval-Methode übergeben? Oder machst du das gar nicht? Denke aber schon, das die Makros der Objekte, aus denen heraus du das aufrufst, dann ja auch mitteilen müssen, dass genau sie das aufrufen, oder ihre spezifischen Werte mitgeben wollen um die dann zu verarbeiten, oder?
==========
Zur INCLUDE: Contronics sagt doch, das PHP wäre komplett und unverändert, wie also kann das dann (ohne Bug) sein?
Ich habe in anderen Threads nachgewiesen, daß eine gewisse PHP-Code-Größe das System zum Absturz bringt, wobei völlig egal ist, welcher (korrekte) Code hinzukommt, um diese Grenze zu überschreiten. Selbst hinzugefügte Kommentare reichen da aus.
Include fügt ja zur Laufzeit nur Code in das Script ein, vergrößert es also.... habt ihr das mal mit hinreichend kleinen Codeschnipseln im Stamm-Script und im Include versucht? Vielleicht ist das ja der selbe Effekt? Dann dürften das dann "plötzlich doch funktionieren", wenn beider Code zusammen nur klein genug ist im Umfang.
Gruß Gerd