Wieviel Zeilen Code sind das?
Das geht schon noch. Ich hatte eher Performancebedenken, da ich so ja jedes einzelne Zeichen durchgehe.
$pos = array( 5, 9, 12, 16, 21 ); // 5 Positionen
$alt = 'qwertzuiopasdfghjklxcvbnm,';
$neu = '';
for ($i=0; $i < strlen($alt); $i++) {
if (in_array($i, $pos)) {
$neu .= '<span class="varpos">'.substr($alt, $i, 1).'</span>';
} else {
$neu .= substr($alt, $i, 1);
}
}
Meine jetztige Lösung finde ich irgendwie schöner:
$pos = array( 5, 9, 12, 16, 21 ); // 5 Positionen
$sequence= 'qwertzuiopasdfghjklxcvbnm,';
for ($i = count($pos)-1; $i >= 0; $i--) {
$sequence = substr_replace($sequence, "</span>", $pos[$i]+1, 0);
$sequence = substr_replace($sequence, '<span class="varpos">', $pos[$i], 0);
}
finswimmer