-
Hallo,
ich versuch ne ganz simple Funktion zu erstellen ... aber schaffs net ...
ich möchte, dass in den Ordner ./hallo/
geschaut wird. in diesem Ordner liegen ein oder mehr Ordner.
Ich möchte jetzt nicht die ganze Liste aller Ordner anzeigen lassen, sondern nur den Pfad zu dem alphabetisch ersten Ordner in ./hallo/
hoffe jemand kann mir helfen.
Vielen Dank im Voraus!Design Möbel Architektur-Visualisierungen Webdesign RECHTECK
-
07.09.10 19:41 #2
So etwas (ungetestet!):
scandir() sortiert automatisch den Ordnerinhalt alphabetisch.PHP-Code:function GetFirstDir($path)
{
$DirContent = scandir($path);
foreach ($DirContent as $Item)
{
if (is_dir($Item))
return $path."/".$Item;
}
}
$FirstDir = GetFirstDir("./hallo/");
mfg ComFreek
Falls ich dir geholfen habe, würde ich mich über ein DANKE freuen!
Kenn mich am besten aus in C++, WEB-Sprachen (PHP, HTML, JavaScript) und vllt. mehr
[PHP] Überprüfen, ob Website erreichbar • Sicherheit in PHP-Codes schaffen • Google Chrome-Extension für tutorials.de • json_compress()
-
Vielen Dank!
Design Möbel Architektur-Visualisierungen Webdesign RECHTECK
-
Hallo, die Funktion läuft prima, ich habe da noch eine Frage:
In dem Orner .hallo/
liegen Ordner die mit "kat1_" "kat2_" und "kat3_" beginnen.
Kann man die Funktion so umstellen, dass jeweils nur der Pfad der ersten Datei von "kat1_" bzw. "kat2_" bzw. "kat3_" ausgegeben wird?Design Möbel Architektur-Visualisierungen Webdesign RECHTECK
-
08.09.10 16:19 #5
Meinst du, dass die Funktion die ersten drei Ordner ausgibt?
mfg ComFreek
Falls ich dir geholfen habe, würde ich mich über ein DANKE freuen!
Kenn mich am besten aus in C++, WEB-Sprachen (PHP, HTML, JavaScript) und vllt. mehr
[PHP] Überprüfen, ob Website erreichbar • Sicherheit in PHP-Codes schaffen • Google Chrome-Extension für tutorials.de • json_compress()
-
Nicht ganz,
die Ordner im Ordner ./hallo/ heißen z.B. kat1_Testprojekt oder kat3_neuesProjekt. Also es gibt 3 Kategorien.
Ich will dass die Funktion den alphapetisch ersten Ordnerpfad mit dem Beginn kat1_
den alphabetisch ersten Ordnerpfad mit dem Beginn kat2_
den alphabetisch ersten Ordnerpfad mit dem Beginn kat3_
ausgeben kann.Design Möbel Architektur-Visualisierungen Webdesign RECHTECK
-
09.09.10 08:30 #7
Sorry, dass ich dich immer noch nur teilweise verstehe, aber meinst du sowas:
Wenn man im Ordner hallo die Ordner (nach alphabetischer Reihenfolge) kat1_..., kat2_... und kat3_... hat, dann werden die ausgegeben.PHP-Code:function GetKatDirs($path)
{
$DirContent = scandir($path);
$FoundItems = array();
foreach ($DirContent as $Item)
{
if (strtolower(substr($Item,0,5))=="kat1_" || strtolower(substr($Item,0,5))=="kat2_" || strtolower(substr($Item,0,5))=="kat3_")
{
$FoundItems[] = $path."/".$Item;
}
}
return $FoundItems;
}
$KatDirs = GetKatDirs("./hallo/");
Wenn du jetzt die Funktion für andere Ordner umbauen willst, würde ich dir empfehlen ein Array mit den Präfixen der Ordner zu machen:
PHP-Code:$Prefixes = array("kat_1", "kat_2", "kat_3");
...
if (in_array(strtolower(substr($Item,0,5)), $Prefixes)
$FoundItems[] = $path."/".$Item;
PS: Du kannst die Funktion strtolower auch entfernen, ich schrieb sie nur hin, damit es keine Probleme mit der Groß/Kleinschreibung gibt, wenn es z.B. KAt3_ heißt.mfg ComFreek
Falls ich dir geholfen habe, würde ich mich über ein DANKE freuen!
Kenn mich am besten aus in C++, WEB-Sprachen (PHP, HTML, JavaScript) und vllt. mehr
[PHP] Überprüfen, ob Website erreichbar • Sicherheit in PHP-Codes schaffen • Google Chrome-Extension für tutorials.de • json_compress()
-
; ) Ach kein Problem, ich glaub eher dass ich mich nicht ganz eindeutig ausgedrückt habe.
Hintergrund der ganzen Aktion ist, dass es 3 Kategorien auf der späteren HP gibt. Wenn man jetzt z.B. beim surfen auf Kategorie 1 klickt, soll automatisch das erste Projekt mitgeöffnet werden.
Ich habe drei Kategorien die als Ordner kat1_* kat2_* kat3* in dem Oderner ./hallo/ liegen.
Aus diesem Grund brauch ich den Pfad zu dem ersten Projekt der einzelnen Kategorien.
Sprich, wenn man auf Kategorie 1 klickt, soll in ./hallo/ der Pfad zum alphabetisch ersten Projekt der ganzen Projekte angezeigt werden die mit den 5 Buchstaben kat_1* beginnen. Usw.
Vielen Dank dass Du dir die Mühe machst mich verstehen zu wollen ; )Geändert von fx001 (09.09.10 um 11:29 Uhr)
Design Möbel Architektur-Visualisierungen Webdesign RECHTECK
-
09.09.10 12:21 #9
Achso, jetzt verstehe ich dich (Glaube ich zumindest
).
Die Funktion von "oben" habe ich kurz so abgewandelt:
Edit: Weil es öfters zu Fragen bzgl. Ordner/-inhalte und PHP gibt, habe ich jetzt eine PHP-Klasse veröffentlicht: TCachedDirScanner.PHP-Code:function GetCategoryDirs($path)
{
$CategoryPrefixes = array("kat1_","kat2_","kat3_");
$DirContent = scandir($path);
$FoundItems = array();
foreach ($DirContent as $Item)
{
if (in_array(strtolower(substr($Item,0,5)), $CategoryPrefixes)
{
$FoundItems[] = $path."/".$Item;
}
}
return $FoundItems;
}
$CatDirs = GetCategoryDirs("./hallo/");
Wenn du willst, kannst du sie auch nutzen!
Geändert von ComFreek (09.09.10 um 13:50 Uhr)
mfg ComFreek
Falls ich dir geholfen habe, würde ich mich über ein DANKE freuen!
Kenn mich am besten aus in C++, WEB-Sprachen (PHP, HTML, JavaScript) und vllt. mehr
[PHP] Überprüfen, ob Website erreichbar • Sicherheit in PHP-Codes schaffen • Google Chrome-Extension für tutorials.de • json_compress()
-
Hey vielen Dank sehr lehrreich die ZIP mit den Kommentaren!
Wenn ich die dritte Zeile so abändere, wird mir dann der Pfad für den alphabetisch ersten ordner aller kat1_* Ordner ausgegeben?
$CategoryPrefixes = array("kat1_");Design Möbel Architektur-Visualisierungen Webdesign RECHTECK
-
09.09.10 15:11 #11
Dir werden alle Ordner mit dem Präfix kat1_ ausgegeben (in alphabetischer Reihenfolge).
Du hast doch folgende Ordnerstruktur, oder?:
Code :1 2 3 4 5
hallo | |--kat1_test (Ordner) |--kat2_test (Ordner) |--kat3_test (Ordner)
PS: Vielen Dank für den Kommentar zur Klasse. Wenn du willst, kannst du den Kommentar auch beim Blogeintrag posten
mfg ComFreek
Falls ich dir geholfen habe, würde ich mich über ein DANKE freuen!
Kenn mich am besten aus in C++, WEB-Sprachen (PHP, HTML, JavaScript) und vllt. mehr
[PHP] Überprüfen, ob Website erreichbar • Sicherheit in PHP-Codes schaffen • Google Chrome-Extension für tutorials.de • json_compress()
-
Mach ich gerne ; )
Ahhh Missverständnis gefunden:
./hallo/
kat1_Neubaugebiet
kat2_Immobilie
kat1_Altbau
kat1_Wohnung
kat3_ein Projekt
kat3_bla
kat1_test
...
(Alle liegen in einer Ebene! in dem Ordner ./hallo/)
so, jetzt klick ich bei mir auf der hp auf den button "kategorie 1" und jetzt soll nicht nur die ordnerliste mit allen projekten mit dem anfang kat1_ angezeigt werden (das klappt wunderbar mit pregmatch), sondern direkt das erste projekt aufgerufen werden. dafür brauch ich aber den jeweiligen Pfad für das erste Projekt kat1_ kat2_ kat3_
Also wenn ich in Kategorie 1 bin brauch ich den Pfad zum ersten Projekt, wenn ich in Kategorie 2 bin brauch ich den Pfad zum ersten Projekt von kategorie 2 ...Design Möbel Architektur-Visualisierungen Webdesign RECHTECK
-
09.09.10 16:01 #13
Ok, so müsste es funktionieren:
PS: Was soll eigentlich der Thread-Titel bedeuten? Du hast dich wohl verschriebenPHP-Code:function GetCategoryDirs($path, $prefix)
{
$DirContent = scandir($path);
$FoundItems = array();
foreach ($DirContent as $Item)
{
if (in_array(strtolower(substr($Item,0,strlen($prefix))), $prefix)
{
$FoundItems[] = $path."/".$Item;
}
}
return $FoundItems;
}
$CatDirs = GetCategoryDirs("./hallo/", "kat1_");
ShowCategory ($CatDirs[0]); // Erste Kategorie anzeigen
Geändert von ComFreek (09.09.10 um 16:06 Uhr)
mfg ComFreek
Falls ich dir geholfen habe, würde ich mich über ein DANKE freuen!
Kenn mich am besten aus in C++, WEB-Sprachen (PHP, HTML, JavaScript) und vllt. mehr
[PHP] Überprüfen, ob Website erreichbar • Sicherheit in PHP-Codes schaffen • Google Chrome-Extension für tutorials.de • json_compress()
-
Wenn ich das in mein Skript einbaue wird
Parse error: syntax error, unexpected '{' in "das Skript von Oben" on line 8
angezeigt.
Ohne die Funktion läuft mein Skript.
Ich seh da jetzt bei Deiner Funktion aber keinen Syntaxfehler ? oder Du ?Geändert von fx001 (09.09.10 um 19:13 Uhr)
Design Möbel Architektur-Visualisierungen Webdesign RECHTECK
-
09.09.10 19:44 #15
Sorry, ich habe ihn gerade bemerkt.
Ich hatte eine Klammer bei der IF-Anweisung vergessen. So ist es richtig:
PHP-Code:function GetCategoryDirs($path, $prefix)
{
$DirContent = scandir($path);
$FoundItems = array();
foreach ($DirContent as $Item)
{
if (in_array(strtolower(substr($Item,0,strlen($prefix))), $prefix)
{
$FoundItems[] = $path."/".$Item;
}
}
return $FoundItems;
}
$CatDirs = GetCategoryDirs("./hallo/", "kat1_");
ShowCategory ($CatDirs[0]); // Erste Kategorie anzeigen
mfg ComFreek
Falls ich dir geholfen habe, würde ich mich über ein DANKE freuen!
Kenn mich am besten aus in C++, WEB-Sprachen (PHP, HTML, JavaScript) und vllt. mehr
[PHP] Überprüfen, ob Website erreichbar • Sicherheit in PHP-Codes schaffen • Google Chrome-Extension für tutorials.de • json_compress()
Ähnliche Themen
-
x Dateien eines Ordners nach Datum geordnet ausgeben
Von z0oL im Forum PHPAntworten: 1Letzter Beitrag: 30.01.08, 19:11 -
Die ersten 20 Wörter ausgeben
Von noctaru im Forum PHPAntworten: 6Letzter Beitrag: 03.05.06, 18:59 -
ersten Infos ausgeben!
Von Henkeyy im Forum PHPAntworten: 1Letzter Beitrag: 24.10.04, 15:58 -
Zur ersten Buchstabe eines Ordners springen
Von kiphok im Forum CGI, Perl, Python, Ruby, Power ShellAntworten: 1Letzter Beitrag: 12.03.04, 12:41 -
Inhalt eines Ordners vom FTP ausgeben
Von acid.rain im Forum PHPAntworten: 5Letzter Beitrag: 16.11.02, 19:01



8Danke

Zitieren

Login






[PHP] [Codeschnipsel] ImageColor aus HTML-Farbcodierung erstellen