B
ByeBye 182971
Guten Tag zusammen,
ich hab einProblem mit dem Rekursiven Verzeichnis durchlauf eines scripts. Der Durchlauf an sich und das listen der files ist kein Ding. Das Problem ist, dass ich auch noch die Datei endungen abgleichen will.
hier ist mein code der aber leider nicht funktioniert, da er immer nur den letzten filetyp im array $types ausgibt (außerdem ist die performance mies):
EDIT: Habs geschafft aber das ist definitiv nicht die beste lösung das muss auch alles in 2 schleifen gehen statt 6 oder so^^!
ich hab einProblem mit dem Rekursiven Verzeichnis durchlauf eines scripts. Der Durchlauf an sich und das listen der files ist kein Ding. Das Problem ist, dass ich auch noch die Datei endungen abgleichen will.
hier ist mein code der aber leider nicht funktioniert, da er immer nur den letzten filetyp im array $types ausgibt (außerdem ist die performance mies):
EDIT: Habs geschafft aber das ist definitiv nicht die beste lösung das muss auch alles in 2 schleifen gehen statt 6 oder so^^!
PHP:
<?php
function read_recursiv($path, $type)
{
$result = array();
$handle = opendir($path);
if ($handle)
{
while (false !== ($file = readdir($handle)))
{
if ($file != "." && $file != "..")
{
$name = $path . "/" . $file;
if (is_dir($name))
{
$ar = read_recursiv($name, $type);
foreach ($ar as $value)
{
$result[] = $value;
}
}
else
{
if (stripos($file, $type))
$result[] = $name;
}
}
}
}
closedir($handle);
return $result;
}
$types=array("gif", "jpg", "txt");
foreach ($types as $key => $type)
{
$data[] = read_recursiv(".", $type);
}
echo "<b>" . count($data, COUNT_RECURSIVE) . " Dateien gefunden</b><br>\n";
foreach ($data as $key => $value)
{
foreach ($value as $key => $result)
{
echo "$result<br>\n";
}
}
?>
Zuletzt bearbeitet von einem Moderator: