ppmk22
Goto Top

String zerlegen an verschieden Stellen

ich noch mal

Ich habe verschieden Strings die immer 200 Zeichen lang sind.
Diesen möchte ich an bestimmten stellen zerlegen.

z.B. 3 - 30 - 30 - 30 - 30 - 3 - 6 - 30 ........

Gibt es eine schönere Methode als das hier?
 
<? 
$array = substr($string, 0, -197);
$array[1] = substr($string, 3, -167);
$array[2] = substr($string, 33, -137);
//usw.
?> 

Content-Key: 291188

Url: https://administrator.de/contentid/291188

Ausgedruckt am: 29.03.2024 um 05:03 Uhr

Mitglied: colinardo
colinardo 18.12.2015, aktualisiert am 19.12.2015 um 11:29:04 Uhr
Goto Top
Hallo @ppmk22,
da könntest du dir z.B. eine eigene kleine Funktion dafür schreiben, welcher du den String und ein Array aus den Stringlängen übergibst. Dann kannst du sie bei Folgeaufrufen einfach erneut benutzen:
<?php
function splitstring($str,$arr_parts){
   if(array_sum($arr_parts) <= strlen($str)){
	$pos = 0; // Variable speichert die Startpositionen
        $arr_out = array();  //Array welches zum Schluss ausgegeben wird
	for ($i = 0;$i < count($arr_parts);$i++){
		array_push($arr_out,substr($str,$pos,$arr_parts[$i]));
		$pos += $arr_parts[$i];
	}
	return $arr_out;
    }else{
        return "Fehler! Aufteilung größer als Stringlänge";  
    }
}
// String welcher zerlegt werden soll
$string = "HallodasisteinTest";  
// String mit obiger Funktion und einem Array der Stringlängen zerlegen
$result = splitstring($string,array(5,3,3,3,4));
// Ausgabe
echo "<pre>" . print_r($result,true) . "</pre>";  
?>
Grüße Uwe
Mitglied: ppmk22
ppmk22 19.12.2015 um 15:55:39 Uhr
Goto Top
danke, das funktioniert ganz toll face-smile
Mitglied: colinardo
colinardo 30.12.2015 um 19:50:59 Uhr
Goto Top
Schön das es dich weiter gebracht hat.
Wenns das dann war, den Beitrag bitte noch auf gelöst setzen. Merci.

Guten Rutsch
Grüße Uwe