Zeichen ersetzen
test_dresden_01.jpg -> Test Dresden
Hi,
also ich hab nen Bildergaleriescript und möchte, das darunter angeziegt wird, um was für eine Bild es sich handelt. Dabei sollen jedoch die Dateiendung, der Unterstrich und evtl. Nummerierungen nicht angezeigt werden.
Ich hab bissl veruscht das hin zu bekommen, aba bis jetzt es nicht geschafft. Das muss wohl mit regulären ausdrücken gemacht werden. Aba so ein Spezi in php bin ich nicht, das ich das schaffe.
Könnt ihr mir weiter helfen?
Das allerbeste wäre sowas. Unter dem Bild "test_dresden_01.jpg" wird "Test Dresden" angezeigt. Also Zahlen, Dateiendung und Unterstriche weg, sowie am besten noch den Anfangsbuchtaben jedes Wortes groß. Obwohl, wenn letzteres zu viel Aufwand ist, wäre das nicht allzu schlimm, da ich die Bilder auch in Großschreibung abspeichern könnte.
Ich danke euch
schrecke
[EDIT 19.06.2007]
Thread gelöst und geschlossen
masterG(Moderator)
Hi,
also ich hab nen Bildergaleriescript und möchte, das darunter angeziegt wird, um was für eine Bild es sich handelt. Dabei sollen jedoch die Dateiendung, der Unterstrich und evtl. Nummerierungen nicht angezeigt werden.
Ich hab bissl veruscht das hin zu bekommen, aba bis jetzt es nicht geschafft. Das muss wohl mit regulären ausdrücken gemacht werden. Aba so ein Spezi in php bin ich nicht, das ich das schaffe.
Könnt ihr mir weiter helfen?
Das allerbeste wäre sowas. Unter dem Bild "test_dresden_01.jpg" wird "Test Dresden" angezeigt. Also Zahlen, Dateiendung und Unterstriche weg, sowie am besten noch den Anfangsbuchtaben jedes Wortes groß. Obwohl, wenn letzteres zu viel Aufwand ist, wäre das nicht allzu schlimm, da ich die Bilder auch in Großschreibung abspeichern könnte.
Ich danke euch
schrecke
[EDIT 19.06.2007]
Thread gelöst und geschlossen
masterG(Moderator)
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 61057
Url: https://administrator.de/contentid/61057
Ausgedruckt am: 05.11.2024 um 14:11 Uhr
19 Kommentare
Neuester Kommentar
Google->PHP zeichen ersetzen oder php text ersetzen hilft.
Yahoo oder ähnliche übrigens auch.
Hier einmal vorgekaut:
$text="test_dresden_01.jpg";
$textneu="";
$array=split($text);
foreach($array as $wort)
{
if($wort==".") #einziger Haken:ich setze hier vorraus, dass im Dateinamen kein Punkt ist(außer eben die Endung)
{break;}
$textneu.=$wort;
}
$array=explode($textneu,"_");
$textneu="";
foreach($array as $wort)
{
$textneu.=ucfirst($wort)." ";
}
$textneu=rtrim($textneu);
echo $textneu; #Rückgabe:"Test Dresden"
Da, wenn du es jetzt nicht schaffst... ;)
Yahoo oder ähnliche übrigens auch.
Hier einmal vorgekaut:
$text="test_dresden_01.jpg";
$textneu="";
$array=split($text);
foreach($array as $wort)
{
if($wort==".") #einziger Haken:ich setze hier vorraus, dass im Dateinamen kein Punkt ist(außer eben die Endung)
{break;}
$textneu.=$wort;
}
$array=explode($textneu,"_");
$textneu="";
foreach($array as $wort)
{
$textneu.=ucfirst($wort)." ";
}
$textneu=rtrim($textneu);
echo $textneu; #Rückgabe:"Test Dresden"
Da, wenn du es jetzt nicht schaffst... ;)
Moin ihr beide,
so, ich habe auch noch eine kl. Lösung auf dem Herzen.
Der Vorteil meiner Methode ist, dass die Bilder auch "test_dresden_versuch_01.jpg heißen können. Sprich es wird immer die Zahl und die Endung (egal welche -jpg, jpeg) abgeschnitten.
Gruß
Dani
so, ich habe auch noch eine kl. Lösung auf dem Herzen.
# Exmaple: Bildname
$pic_name="test_dresden_01.jpg";
# Filtert Leerzeichen, Nummerierung und Dateiendung
$pic_name=preg_split("/[_]/", $pic_name);
$filter_nums=array_pop ($pic_name);
# Erzeugt aus dem Array einen String
foreach($pic_name as $string)
{
$picname.=" ".$string;
}
# Ausgabe des neuen Namens
echo $picname;
Gruß
Dani
Schln zuhören...daran habe ich nicht mehr gedacht.
Na gut, weil heute Montag ist und ich gut drauf bin hier noch die kl. Erweiterung:
Ungeteste Skizze!
Gruß
Dani
Na gut, weil heute Montag ist und ich gut drauf bin hier noch die kl. Erweiterung:
# Exmaple: Bildname
$pic_name="täst_dresden_01.jpg";
#Ersetzt alle Sonderzeichen
$sonder_char=array(
"1" => array("ä", "ö", "ü", "ß"),
"2" => array("ae", "oe", "ue", "ss")
);
for ($i=0;$i < 4;$i ++)
{
$pic_name=str_ireplace($sonder_char["1"][$i], $sonder_char["2"][$i], $pic_name);
}
# Filtert Leerzeichen, Nummerierung und Dateiendung
$pic_name=preg_split("/[_]/", $pic_name);
$filter_nums=array_pop ($pic_name);
# Erzeugt aus dem Array einen String
foreach($pic_name as $string)
{
$picname.=" ".ucfirst($string);
}
# Ausgabe des neuen Namens
echo $picname;
Gruß
Dani
So schrecke,
das war mein Fehler. Ich habe vergessen, den Punkt und die Zahlen auszuschließen. Hier die Version v0.4:
Also bei mir funktioniert alles wunderbar. Mach noch ein paar Tests und gib uns einfach Rückmeldung.
Gruß
Dani
das war mein Fehler. Ich habe vergessen, den Punkt und die Zahlen auszuschließen. Hier die Version v0.4:
<?php
#Exmaple: Bildname
$pic_name="kongresszentrum_1331.jpg";
#Ersetzt alle Sonderzeichen
$sonder_char=array(
"1" => array("ä", "ö", "ü", "ß"),
"2" => array("ae", "oe", "ue", "ss")
);
for ($i=0;$i < 4;$i ++)
{
$pic_name=str_ireplace($sonder_char["1"][$i], $sonder_char["2"][$i], $pic_name);
}
# Filtert Leerzeichen, Nummerierung und Dateiendung
$pic_name=preg_split("/[_.0123456789]/", $pic_name);
$filter_nums=array_pop ($pic_name);
# Erzeugt aus dem Array einen String
foreach($pic_name as $string)
{
$picname.=" ".ucfirst($string);
}
# Ausgabe des neuen Namens
echo $picname;
Gruß
Dani
Moin,
Das Problem habe ich noch gar nie in Augenschein genommen. So auf den 1. bzw 2. weiß ich auch keine Idee, wie du das Problem beheben könntest. Wenn dann müsstest du deinen kompletten Duden hinterlegen => viel Spaß beim Tippen.
Gruß
Dani
Nebenbei noch, dein Code - "1" => array("ä" , "ö" , "ü"), "2" => array("ae", "oe", "ue") - hab
ich umgedreht. Denn die Dateinamen werden ohne umlaute geschrieben, jedoch sollen ja die
Namen auf der Homepage mit Umlauten, sofern vorhanden, da stehen. Das ### auch super.
glaeserne_man...jpg wird zu Gläseren Manufa... .
Ich dachte, du wolltest ä,ö,ü ersetzen durch die entsprechenden Zeichen?! Egal...ich habe mich vielleicht auch verlesen!ich umgedreht. Denn die Dateinamen werden ohne umlaute geschrieben, jedoch sollen ja die
Namen auf der Homepage mit Umlauten, sofern vorhanden, da stehen. Das ### auch super.
glaeserne_man...jpg wird zu Gläseren Manufa... .
Das Problem habe ich noch gar nie in Augenschein genommen. So auf den 1. bzw 2. weiß ich auch keine Idee, wie du das Problem beheben könntest. Wenn dann müsstest du deinen kompletten Duden hinterlegen => viel Spaß beim Tippen.
Ich glaub das es wäre ja fast sinnvoller, die Beschreibung zu nem Bild extern zu laden oder?
Da spart man sich das ganze umgebaue der Namen. Also das in ner Datei steht:
blaues_wunder_jpg => "Das wunderschöne Blaue Wunder" oder sowas. Weiß ni ...
Würde ich so machen, da deine Dateinamen wirklich extrem variieren.Da spart man sich das ganze umgebaue der Namen. Also das in ner Datei steht:
blaues_wunder_jpg => "Das wunderschöne Blaue Wunder" oder sowas. Weiß ni ...
Gruß
Dani