seth: require_once-ersatz

gudn tach!

include_once und require_once sind ja angeblich bei einer grossen anzahl an dateien lahm.
ein kraut dagegen beschreibt z.b. http://www.pure-php.de/node/19.

was aehnliches, aber doch nicht dasselbe, habe ich nun vor mit:

file_foo.php:
  ~~~php if(!isset($gl_loaded_flag['file_bar.inc.php']))
    require('file_bar.inc.php');

  
file\_bar.inc.php:  
  ~~~php
$gl_loaded_flag['file_bar.inc.php'])=true;  
  /* code */

so aus dem bauch heraus glaube ich, dass das nicht dumm ist. aber vielleicht uebersehe ich ja dabei moegliche probleme. oder vielleicht hat jemand noch eine bessere idee...

prost
seth

  1. echo $begrüßung;

    include_once und require_once sind ja angeblich bei einer grossen anzahl an dateien lahm.
    oder vielleicht hat jemand noch eine bessere idee...

    Wenn du kein Performance-Problem hast, musst du es auch nicht beseitigen. Oder auf neudeutsch: If you don't have a problem don't fix it.

    Ermittle die benötigte Ausführungszeit von dem "Problemkind", von deiner Umgehungslösung und in diesem Fall auch noch von der _once-losen Variante. Wieviel schneller/langsamer sind die Varianten wirklich?

    Ab PHP5 kannst du versuchen, mit __autoload() was zu erreichen.

    Warte auf PHP 5.2 (wenn ich mich recht erinnere, ansonsten 6), da ist das "Problem" beseitigt.

    echo "$verabschiedung $name";

    1. gudn tach dedlfix!

      da hatte ich ja glueck, dass gleich der richtige mein posting fand.

      Wenn du kein Performance-Problem hast, musst du es auch nicht beseitigen.

      naja, ich bin halt _vor_ der umsetzung am ueberlegen, d.h. ich weiss noch gar nicht, ob es in meinem konkreten fall zu performance-problemen kommen koennte.

      Ermittle die benötigte Ausführungszeit von dem "Problemkind", von deiner Umgehungslösung und in diesem Fall auch noch von der _once-losen Variante.

      das ausprobieren wollte ich mir gerade ersparen. es sind halt schon einige dateien, und mit einfachem s///g waer's nicht getan.

      Ab PHP5 kannst du versuchen, mit __autoload() was zu erreichen.

      ah, das war mir neu. sieht gut aus.
      aaaber:

      Warte auf PHP 5.2 (wenn ich mich recht erinnere, ansonsten 6), da ist das "Problem" beseitigt.

      oh! noch besser. dann nehm ich einfach *_once, denn mehr als ein paar zehntelsekunden wird das momentan schon nicht fressen.

      thx!

      prost
      seth