kostenloser Webspace werbefrei: lima-city


Automatischesauslesen...

lima-cityForumProgrammiersprachenPHP, MySQL & .htaccess

  1. Autor dieses Themas

    strange

    Kostenloser Webspace von strange

    strange hat kostenlosen Webspace.

    Moin,

    ich möchte für ein Templatesystem an dem ich grade arbeite eine Funktion haben, die aus einem bestimten Ordner, aus allen Unterordner (die im Verzeichniss sind), aus einer bestimten Datei, ein paar Werte auslesen und in ein 2 Dimensionales Array schmeißen.

    Hier mal nen Beispiel der Ordner Strucktur:
    ../style
        /default
           style.php
        /blabla
           style.php
        usw...


    In dem Ordner Style, werden die Templates hinterlegt und die style.php ist so zu sagen eine Info Datei, die alle wichtigen Daten vom Template hat. Name, Pfad, etc..

    Das Array würde ich mir so wünschen:

    $styles -> Name -> Pfad



    Wie ich die Ordner auslese ist mir ja bekannt, nur schaffe ich es nicht, die Abfrage auf das nötigste zu Reduzieren, ohne das dann ".." und "." mit im Array laden und ich dann einen Fehler bekomme.


    Ich hoffe Ihr könnt mir da ein wenig weiter helfen und an dieser Stelle schon mal Danke an alle, die sich den Kopf zerbrechen ;)
  2. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

  3. t*****b

    Dein Script sieht sicherlich in etwa so aus:

    while ($file = readdir(opendir("./styles/")) {
      // $file dem Array hinzufügen
    }


    Daraus machst du einfach:

    while ($file = readdir(opendir("./styles/")) {
     if ($file != "." && $file != "..") {
      // $file dem Array hinzufügen
     }
    }


    und schon sind . und .. weg.

    Beitrag zuletzt geändert: 9.3.2009 8:50:37 von trueweb
  4. Autor dieses Themas

    strange

    Kostenloser Webspace von strange

    strange hat kostenlosen Webspace.

    Och mist...

    Fatal error: Maximum execution time of 60 seconds exceeded in C:\xampp\htdocs\swb\swb.conf.php on line 11


    Irgendwas mach ich falsch:

    <?php
    // swb.conf.php
    
    	// SystemPath ->
    	define(_absPath, dirname(__FILE__).'/'); // abspath
    	define(_absStyle, _absPath.'style/'); // abspath to style folder
    	define(_absCache, _absPath.'cache/'); // abspath to cache folder
    	define(_absReg, _absPath.'swb.reg.php'); // abspath to swb.reg.php
    
    	// ReadTemplates ->
    	while($file = readdir(opendir(_absStyle))) {
    		if($file != "." && $file != "..") {
    			$style[] = _absStyle.$file;
    		}
    	}
    
    	echo $blub
    
    ?>

    Nur was? Bin irgend wie Heute total vernagelt...

    Beitrag zuletzt geändert: 9.3.2009 9:49:54 von strange
  5. strange schrieb:
    Irgendwas mach ich falsch:


    Das ist ganz einfach... du hast das opendir mit in die while Schleife genommen... das heißt: bei jedem while wird ein neues filehandle geöffnet, allerdings nie geschlossen... bei jedem next() sozusagen wird es neu geöffnet.

    Wenn du das opendir so raus nimmst geht es:
    <?php
    
    // swb.conf.php
    
        // SystemPath ->
        define(_absPath, dirname(__FILE__).'/'); // abspath
        define(_absStyle, _absPath.'style/'); // abspath to style folder
        define(_absCache, _absPath.'cache/'); // abspath to cache folder
        define(_absReg, _absPath.'swb.reg.php'); // abspath to swb.reg.php
    
        if ($handle = opendir(_absStyle)) {
            // ReadTemplates ->
            while(false !== ($file = readdir($handle))) {
                if(($file <> ".") && ($file <> "..")) {
                    $style[] = _absStyle.$file;
                }
            }
    
            echo $blub;
            closedir($handle);
        }
        else {
            echo "Konnte Verzeichnis nicht öffnen: "._absStyle;   
        }
    
    ?>


    Achja und die Prüfung gegen den TYP false (deshalb !== ) wäre auch sinnvoll, sonst wird der Dateiname als False angenommen ;-)

    Grüßle
  6. Autor dieses Themas

    strange

    Kostenloser Webspace von strange

    strange hat kostenlosen Webspace.

    Ah wusste ichs doch, bin wieder ein wenig vernagelt. Danke
  7. Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!

    lima-city: Gratis werbefreier Webspace für deine eigene Homepage

Dir gefällt dieses Thema?

Über lima-city

Login zum Webhosting ohne Werbung!