One method is to use regular expressions e.g.: $pattern = '/C([0-9]+)P/'; preg_match($pattern, $str, $matches); $matches is an array. $matches[1] contains the number you want. On Thu, Jul 24, 2014 at 12:18 PM, Negin Nickparsa <nickparsa@xxxxxxxxx> wrote: > I have a string which always has "C" then a number which it's length can > change anytime and then "P" and then a space and then a word > > like: > > echo "C60P1 Unit"; > > is it anyway to split the string by type? > > from the manual I did this: > > function multiexplode ($delimiters,$string) { > $ary = explode($delimiters[0],$string); > array_shift($delimiters); > if($delimiters != NULL) { > foreach($ary as $key => $val) { > $ary[$key] = multiexplode($delimiters, $val); > } > } > return $ary; > } > echo "C60P1 Unit"; > $str="C60P1 Unit"; > $delimiters = Array("C","P"," "); > $res = multiexplode($delimiters,$str); > echo '<pre>'; > print_r($res); > echo '</pre>'; > > but it seems to me it is so complex for such a small string > does anything for type exist which I don't know about to for example just > grab the numbers?because I just care about the numbers here 60 and 1 > seperately >