Yeshe
0
Q:

php split string from end

You can use this following function
  
  function str_rsplit($string, $length)
{
    // splits a string "starting" at the end, so any left over (small chunk) is at the beginning of the array.
    if ( !$length ) { return false; }
    if ( $length > 0 ) { return str_split($string,$length); }    // normal split

    $l = strlen($string);
    $length = min(-$length,$l);
    $mod = $l % $length;

    if ( !$mod ) { return str_split($string,$length); }    // even/max-length split

    // split
    return array_merge(array(substr($string,0,$mod)), str_split(substr($string,$mod),$length));
}


$str = '123456789';
str_split($str,5); // return: {"12345","6789"}
str_rsplit($str,5);  // return: {"12345","6789"}
str_rsplit($str,-7); // return: {"12","3456789"}
0

New to Communities?

Join the community