Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[PHP] teil eines string auslesen

Empfohlene Antworten

Veröffentlicht

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?

Hoi,

hier hast du eine Beschreibung von der offiziellen Dokumentation zum Thema substr() ... ;)

Link

Mfg Chris

google.gif -> PHP Stringfunktionen

Weniger als eine Minute Arbeit - ca. 30 Lösungsansätze für dein Problem, inkl. Tutorials, blabla...

lösung habe ich schon lange gefunden... danke

aber ganz so einfach wars auch nicht...


//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

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]

Archiv

Dieses Thema wurde archiviert und kann nicht mehr beantwortet werden.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.