2Danke
ERLEDIGT
JA
JA
ANTWORTEN
6
6
ZUGRIFFE
807
807
EMPFEHLEN
-
Hallo Leute,
es funktioniert zwar was ich mache, aber es gefällt mir nicht. Ist irgendwie unsauber. Darum wollte ich da nach fragen wie ihr es verbessern würdet.
Wollte nur Pfade die zu Bildern führen, und in einem Array sind. Alles bis auf die Dateinamen abschneiden. Dann wird die URL vorher dran gemacht. Damt ich sie in HTML Code verwenden kann.
Oder könnte ich auch /var/www...usw verwenden?
PHP-Code:
Mit array_walk(); hat es nicht so funktioniert. Würdet ihr mir das empfehlen?PHP-Code:$i = 0;
foreach($files as $array) {
$files[$i] = FOTOS_HOTEL_URL . strrchr($array, "/");
echo $files[$i];
$i++;
}
Das mit dem $i vorher ist ja auch irgendwie unschön.
Freue mich über jede Information.
lg Darian
-
Hallo,
ich verstehe ehrlich gesagt dein Problem nicht ganz, ich persönlich finde die Methode sauber und legithim. RUmgefuscht hast du nicht und das Ergebnis ist sauber.
Was ich vielleicht nicht machen würde ist den Source-Array mit den Ergebnissen überschreiben, aber naja das ist Geschmackssache.
LG XerY
-
Mit
bekommst du auch direkt den Index des Elements. Und wenns ein assoziatives ist stattdessen den Namen.PHP-Code:foreach($Source as $Index => $Element)
-
Hallo Darian,
wolltest du das per array_walk so lösen?
GrussPHP-Code:// Testdaten aufsetzen
DEFINE('FOTOS_HOTEL_URL', 'http://www.example.com/bild');
$files[] = 'pfad/zu/bild1.jpg';
$files[] = 'pfad/zu/bild2.jpg';
$files[] = 'pfad1/zu/bild3.jpg';
$files[] = 'pfad1/zu/bild4.jpg';
$files[] = 'pfad2/zu/bild5.jpg';
$files[] = 'pfad2/zu/bild6.jpg';
$files[] = 'pfad3/zu/bild7.jpg';
// kopieren der Testdaten für array_walk() test
$files2 = $files;
// deine Version
$i = 0;
foreach($files as $array) {
$files[$i] = FOTOS_HOTEL_URL . strrchr($array, "/");
echo $files[$i]."<br/>";
$i++;
}
echo "<pre>";
print_r($files);
echo "</pre>";
// per array_walk
// callback function aufsetzen
function cb_exchange_path(&$item, $key, $newPath)
{
$item = $newPath . strrchr($item, "/");
}
// und nun der array_walk
array_walk($files2, 'cb_exchange_path', FOTOS_HOTEL_URL);
echo "<pre>";
print_r($files2);
echo "</pre>";
-
Danke Leute für die Antworten.
Das mit dem foreach($Source as $Index => $Element) ist doch sauberer, habe ja gewusst dass es irgendwas gab.
array_walk werde ich probieren. (sieht interessant aus, und habe ich noch nie gemacht) Obwohl mir beide Methoden gleich sauber vorkommen.
Das $file überschreibe ich, weil ich es eh nicht mehr brauche, habe ich aber schon immer so gemacht. Fällt das auch unter "nicht schön"?
Desweiteren habe ich mich gefragt wie ich mit strrchr das / auch weg haben könnte. Oder wie ich das machen könnte. Will dann nur den Dateinamen.
Danke an euch für die Infos.
lg aus Guatemala
DarianGeändert von Darian (25.04.08 um 20:30 Uhr) Grund: Zusatzinfo
-
25.04.08 20:46 #6
basename() könnte da was für dich sein.
KIDS Kinderbetreuungsdienst
Xing
"When you play the game of thrones, you win or you die. There is no middle ground."
by Cersei Lannister in "A Game Of Thrones"
-
Danke, sehr fein, habe ich schon gelesen, bin dann aber irgenwie weiter (übersehen).
basename wird es wohl werden.
Danke für die Info
Daniel
Ähnliche Themen
-
Wie lösche ich array-elemente?
Von delphinhawe im Forum Flash PlattformAntworten: 1Letzter Beitrag: 08.08.10, 09:52 -
Im Array Elemente verschieben
Von DrippleTripple im Forum Java GrundlagenAntworten: 3Letzter Beitrag: 19.03.09, 12:49 -
mehrdim. Array einlesen. + Elemente bearbeiten
Von devilofdawn im Forum JavaAntworten: 2Letzter Beitrag: 01.07.07, 17:43 -
Array Elemente
Von Kleiner Wicht im Forum Borland CBuilder und VCLAntworten: 8Letzter Beitrag: 24.01.06, 19:30 -
array-elemente vernichten
Von deepgreen im Forum PHPAntworten: 2Letzter Beitrag: 29.12.01, 20:12





Zitieren

Login






[PHP][Snippet] Array zu XML konvertieren