Peuplarchie Posted February 21, 2011 Share Posted February 21, 2011 Good day to you all, I'm looking for a way to retrieve the text in between *& &* and put it's content into a $var. for each occurrence with in a string. $occu[0] = "dsfsdf"; $occu[1] = "10"; $occu[2] = "10sct"; Is there a way to do this ? I know how to do it but not recusively. function get_string_between($string, $start, $end){ $string = " ".$string; $ini = strpos($string,$start); if ($ini == 0) return ""; $ini += strlen($start); $len = strpos($string,$end,$ini) - $ini; return substr($string,$ini,$len); } $parsed = get_string_between($tache, "*&", "&*"); $tache = str_replace("*&","<div class=\"progress-containers\"><div style=\"width:",$tache); $tache = str_replace("&*","%\">$parsed</div></div>",$tache); Can somebody can give me a tips ? Link to comment https://forums.phpfreaks.com/topic/228358-put-in-seperate-var-content-whats-in-between/ Share on other sites More sharing options...
Peuplarchie Posted February 21, 2011 Author Share Posted February 21, 2011 Impressive, here is what I come back with from before your post. how to implement it with a foreach loop. Let says instead I use index 0 to give me the whole piece and I replace the whole string with anther with the "number" index 1 with the formated html. See code preg_match_all('/\*&([a-z0-9]+)&\*/i',$tache,$out, PREG_SET_ORDER); echo $out[0][0] . ", " . $out[1][0] . ", " . $out[2][0] . ", " . $out[3][0] . ", " . $out[4][0] . "\n"; $i = 0; foreach ($out[$i][0] as &$value) { $value = str_replace("*&","<div class=\"progress-containers\"><div style=\"width:",$value); $value = str_replace("&*","%\">$value[$i][1]</div></div>",$value); $i++; } Link to comment https://forums.phpfreaks.com/topic/228358-put-in-seperate-var-content-whats-in-between/#findComment-1177929 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.