ZuVieL Geschrieben 3. März 2007 Teilen Geschrieben 3. März 2007 hi, ich hab einen string in dem string ist irgednwo so etwas in der art vorhanden: {1:2:3:4} wie bekomme ich diesen part ausgelesen? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
e@sy Geschrieben 3. März 2007 Teilen Geschrieben 3. März 2007 SELFHTML Forumsarchiv / 2003 / September / string auslesen semikolon als trennzeichen Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
etreu Geschrieben 3. März 2007 Teilen Geschrieben 3. März 2007 Hast du dich schon mit regulären Ausdrücken beschäftigt? Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Chris86 Geschrieben 4. März 2007 Teilen Geschrieben 4. März 2007 Hoi, hier hast du eine Beschreibung von der offiziellen Dokumentation zum Thema substr() ... Link Mfg Chris Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Einherjer Geschrieben 12. März 2007 Teilen Geschrieben 12. März 2007 -> PHP Stringfunktionen Weniger als eine Minute Arbeit - ca. 30 Lösungsansätze für dein Problem, inkl. Tutorials, blabla... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
ZuVieL Geschrieben 13. März 2007 Autor Teilen Geschrieben 13. März 2007 lösung habe ich schon lange gefunden... danke aber ganz so einfach wars auch nicht... Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
e@sy Geschrieben 13. März 2007 Teilen Geschrieben 13. März 2007 Wäre ja nett wenn du die Lösung hier kundtun würdes. Dann können andere auch ihren nutzen daraus ziehen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
ZuVieL Geschrieben 13. März 2007 Autor Teilen Geschrieben 13. März 2007 //setze i auf 0 $i = 0; //gehe gesamten string durch while($i == '0') { //definiere zeichen1 $zeichen1 = '{'; //definiere zeichen2 $zeichen2 = '}'; //hole position von $zeichen1 $pos1 = strpos($inhalt, $zeichen1); if($pos1 == '' OR empty($pos1)) { //setze i auf 1 wenn keine position mehr gefunden wurde und beende while $i = 1; }//if ende else { //schneide alles ab bis $pos1 (postion1) $inhalt_sub = substr($inhalt, $pos1); //hole pos von $zeichen2 (position2) $pos2 = strpos($inhalt_sub, $zeichen2); //schneide alles ab von postion 0 bis ziechen position2 + 1 $inhalt_sub2 = substr($inhalt_sub,0 , $pos2+1); //schreibe nun von zeichen 0 pis position + 1 in array $bild_arr[] = $inhalt_sub2; //ersetze gesamten string mit '' $inhalt = str_replace($inhalt_sub2, '', $inhalt); }//ende else }//while ende [/PHP] $inhalt wird mit dem string gefüllt welcher inhalte enthält wie {hallo} oder {blablabla} diese strings werden nun im array $bild_arr gespeichert und können in einer erneuten schleife ersetzt werden oder sonst was werden mein zweck hat es erfüllt: meine stringketten sahen ca so aus: {5,0,1} das sollte ein bild ergeben die erste 5 steht für das bild mit der id 5 welches ich aus der db hole. die 0 für den rahmen oder keinen und die 1 für die größe des bilder groß für 1 und 0 für n thumbnail vielleicht hätte man es auch einfacher lösen können,... aber der pro bin ich ja nicht Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Monty82 Geschrieben 14. März 2007 Teilen Geschrieben 14. März 2007 Mit regulären Ausdrücken hätte es so aussehen können: <?php $strTmp = 'das ist ein {5,0,1} test {5,0,0} zum ersetzen von bildern'; $arrReplace = array(); if (preg_match_all('/{([0-9]+),([01]),([01])}/s',$strTmp,$arrPregRes) > 0) { if (is_Array($arrPregRes) && is_Array($arrPregRes[0])) { foreach ($arrPregRes[0] as $key=>$val) { if (is_Array($arrReplace) && !array_key_exists($val,$arrReplace)) { $intImgId = intval($arrPregRes[1][$key]); $intBorder = intval($arrPregRes[2][$key]); $intSize = intval($arrPregRes[3][$key]); if ($intSize == 1) $strFile = 'bild_mit_id_'.$intImgId.'_gross.jpg'; else $strFile = 'bild_mit_id_'.$intImgId.'_klein.jpg'; $arrReplace[$val] = '<img src="'.$strFile.'" border="'.$intBorder.'">'; } } } } if (is_Array($arrReplace)) { foreach ($arrReplace as $key=>$val) { $strTmp = str_replace($key,$val,$strTmp); } } echo $strTmp; ?> [/PHP] Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.