Newbiew
Anmeldungsdatum: 11. Mai 2009
Beiträge: Zähle...
|
Hallo Leute, ich hab ein Problem und zwar will ich mit Hilfe von PHP einen Ordner auslesen und alle Ordnernamen die da drinnen sind sollen in ein Array gespeichert werden Bsp: Array[0]=>Bilder Array[1]=>Videos ... Ich hab bisher leider nichts gefunden was mir wirklich weiter hilft...
schon mal vielen Dank!! 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 | if (strlen($_POST["Fortführung"])==0 )
{
$dir = "/home/frigge/Upload/".$selectbox."/".$AL."/".$uploaddir;
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {
}
}
closedir($dh);
}
}
|
|
Greebo
Anmeldungsdatum: 21. November 2006
Beiträge: 3443
Wohnort: 97070 Würzburg
|
Suchst du scandir? Falls ja, hat mich das jetzt als PHP-fremden 2 Minuten suche gekostet...
|
svenXY
Anmeldungsdatum: 22. September 2008
Beiträge: 542
Wohnort: Heidelberg
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26 | <?php
$types = array( 'jpg' => 'Bild', 'png' => 'Bild', 'avi' => 'Video' );
$dir = "/home/jemand/Bilder";
$groupedFiles = array();
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
/* Das ist der korrekte Weg, ein Verzeichnis zu durchlaufen. */
while (false !== ($file = readdir($dh))) {
if ( is_dir($file) ) {
next;
}
# extension ermitteln
$ext = end(explode('.',$file));
# Array befüllen
$groupedFiles[$types[$ext]][] = $file;
}
}
}
closedir($dh);
print_r($groupedFiles);
?>
|
sollte Dein Problem lösen.
|
xabbuh
Anmeldungsdatum: 25. Mai 2006
Beiträge: 6411
|
Mit glob() geht das auch wesentlich kürzer:
| <?php
if(is_dir($dir)) {
$subdirs = glob("$dir/*", GLOB_ONLYDIR);
}
|
|
Newbiew
(Themenstarter)
Anmeldungsdatum: 11. Mai 2009
Beiträge: 23
|
Vielen Dank für die Antworten werde das gleich aus probieren, die Antwort von mir kommt so spät , weil ich weg fahr werde mir beide Beispiele gleich mal zur Brust nehmen und schauen was sie hergeben;) Danke & Grüße
|
Newbiew
(Themenstarter)
Anmeldungsdatum: 11. Mai 2009
Beiträge: 23
|
Hmmm irgendwie funktioniert das nicht so wie ich will vielleicht war die Frage von mir auch nicht genau genug, also ich möchte das die Ordnernamen die sind bei mir z.B FF0652-2009512153012 und alle die mit FF anfangen soll er einlesen dann sollen die so in ein Array geschrieben werden das die die 4 Ziffern nachdem FF mit einander vergleichen kann um heraus zu finden welche die größte ist. Ich will den ersten Ordnernamen ausgeben können indem ich print_r($array [0][0]) und den zweiten Ordnernamen mit print_r($array[0][1]).Ich würde mich über jeden Denk Anstoß in die richtige Richtung freuen:)
|
Newbiew
(Themenstarter)
Anmeldungsdatum: 11. Mai 2009
Beiträge: 23
|
Nochmal Hallo ich hab selber noch weiter probiert und jetzt hakt es an einer anderen Stelle , für euch ist das wahrscheinlich ziemlich einfach aber ich krieg es nicht hin also ich hab jetzt einen String wo all die Daten drinnen sind die ich haben will aber, ich möchte das dieser String nach 6 Zeichen getrennt wird und in eine Variable gelegt wird.
Das ist der String: FF0645FF9998FF9999FF9000FF0646FF0999FF8999FF0534FF9001FF0648FF0649FF9000FF1000FF0647FF1001 und nachher soll das in der Variable so aussehen $string1=FF0645 $string2=FF9998 und danach sollen per Schleife ermittelt werden welcher Wert der höchste ist hoffentlich kann mir da einer helfen.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29 | if (strlen($_POST["Fortführung"])==0 )
{
$dir = "/home/frigge/Upload/".$selectbox."/".$AL."/".$uploaddir;
if (is_dir($dir)) {
if ($dh = opendir($dir)) {
while (($file = readdir($dh)) !== false) {
$arr1=explode(" ",$file);
if($arr1[0][0].$arr1[0][1]=="FF")
{
$test=explode(" ",$arr1[0][0]);
$test2=explode(" ",$arr1[0][1]);
$test3=explode(" ",$arr1[0][2]);
$test4=explode(" ",$arr1[0][3]);
$test5=explode(" ",$arr1[0][4]);
$test6=explode(" ",$arr1[0][5]);
$Zusammenfassung=$test[0][0].$test2[0][0].$test3[0][0].$test4[0][0].$test5[0][0].$test6[0][0];
echo $Zusammenfassung;
}
}
}
closedir($dh);
}
}
|
|