Segédletek.hu

Segédletek weblap szerkesztéshez!
ingyen letöltés

| Mind | PHP | HTML | CSS | Java |
|Legújabbak |Legtöbbször olvasottak|

Könyvtár kezelés php - ben:

Sorozat - Könyvtár kezelés:

Ebben a segédletben megismerkedünk könyvtár kezelés alapjaival php - ben.

A segédlet célja, hogy betekintést engedjen a php könyvtár műveleteibe.

A feladat:
Adott egy könyvtár, írassuk ki php - vel a benne levő fájlokat egymás alá. Ehhez a php - nek az opendir() és a readdir() függvénye kell nekünk.
A kód valahogy így néz ki:

reader.php
<?php
  $dir = "./konyvtarnev/";
  $handle = opendir($dir);
  $fajlok = array();
  while ($fajl = readdir($handle))
  {
    echo $fajl."";
  }
  closedir($dir);
?>

Ez semmi különöset nem mutat, szépen beduin módjára egymás alá kiírja a mappában található dolgokat.
Tegyük fel, hogy mi szeretnénk tudni, hogy mi fájl, és mi könyvtár. Ehhez egy kicsit módosítanunk kell a kódon, az alábbi módon:

<?php
  $dir = "./konyvtarnev/";
  $handle = opendir($dir);
  $allowedtypes = array(".php",".html");
  $fajlok = array();
  while ($fajl = readdir($handle))
  {
    if(is_dir($dir.$fajl)){
        echo $fajl."(D)"."";
    }
    else {
        echo $fajl."(F)"."";
    }
  }
  closedir($dir);
?>

ez, ha könyvtárről van szó, utánaírja, hogy (D) , ha fájlról akkor (F).
Fontos szem előtt tartani, hogy jelen esetben a reader.php a könyvtáron kívül van. Természetesen bele is rakhatjuk, akkor a $dir változó értéke = &amp;quot;./&amp;quot; lesz.

Tegyük fel, hogy mi csak a .php és a .html típusú fájlokra, és a mappákra vagyunk kívácsiak. Ehhez egy kicsit módosítanunk kell a kódot, mégpedig így:

<?php
  $dir = "./konyvtarnev/";
  $handle = opendir($dir);
  $allowedtypes = array(".php",".html");
  $fajlok = array();
  while ($fajl = readdir($handle))
  {
        if($fajl == "." or $fajl==".."){}
        else
        {
        if(is_dir($dir.$fajl)){
            echo $fajl." (D) "."";
        }
        else {
            foreach ($allowedtypes as $allowedtype)
            {
                if($allowedtype == substr($fajl,-4)){
                    echo $fajl." (F) "."";
                }
                if($allowedtype == substr($fajl,-5)){
                    echo $fajl." (F) "."";
                }
            }
        }
        }
  }
  closedir($dir);
?>;

Ezzel elértük, hogy csak a .php .html kiterjesztésű fájlokat, és a könyvtárakat listázzuk ki. Természetesen a $allowedtypes tömb bővíthető tetszőlegesen.
Ez egy jó kiindulási alap a kezdetekhez, ezt a kódot nagyban tovább lehet fejleszteni.

A segédletben felhasznált php függvények:


opendir()
readdir()
is_dir()
substr()

Írta: requiem - 2006-07-19 14:27:35

* Nem vagy bejelentkezve!
* Nem töltheted le a segédlet forrását egyben!
* Nem szavazhatsz a segédletre!
* Nem írhatsz a segédlethez tartozó fórum témába!


ToneFLoat 2006-10-07 17:24:50
Ezt kerestem! :D
Már a fél internetet feltúrtam érte! xD
Anonymus 2006-08-31 21:41:57
szia
Önnek is jár évi 72 000 forint
állami támogatás lakás-előtakarékosság esetén. Válassza a Fundamentát!
www.fundamenta.hu

Mondjon Bon jourt...
és legyen Öné az 1.000.000 € nyeremény! Partouche Poker Tour a bwin-en.
www.bwin.com

Miért fizetne többet?
Akciós élelmiszer, műszaki cikk, gyümölcs, bútor. Nézzen be, megéri!
www.tesco.hu

Lakástakarék
Éljen a lehetőséggel! Állami támogatás. Kedvező fix törlesztő és futamidő.
lakastakarek.com

10.000 €-t keresni havonta
Hogyan keressünk pénzt könnyedén? Kezdjen pénzt keresni még ma!
www.penzt-keresni.net

Hirdessen itt