View Single Post
Old 05-09-2008, 12:55 AM   #2 (permalink)
Wildhoney
La Vida es Sueño
Advanced Programmer Top Contributor 
 
Wildhoney's Avatar
 
Join Date: Sep 2007
Location: Oldham
Posts: 2,280
Thanks: 90
Wildhoney is on a distinguished road
Default

Well, I'm not sure it's needed, to be honest. I have made us a simple example so you can have a play around. See for yourself if you think it's useful or not.

php Code:
function preg_split_callback($szPattern, $szSubject, $szCallback)
{
    if(!function_exists($szCallback))
    {
        return;
    }
   
    return $szCallback(preg_split($szPattern, $szSubject));
}

function split_last(array $aParts = array())
{
    foreach($aParts as &$pPart)
    {
        if(strpos($pPart, ';') === false)
        {
            continue;
        }
       
        list($pPart, $aParts[]) = explode(';', $pPart);
    }
   
    return $aParts;
}

$aParts = preg_split_callback('~\|~', 'a|b;c', 'split_last');

echo '<pre>';
print_r($aParts);
echo '</pre>';
__________________
The man who comes back through the Door in the Wall will never be quite the same as the man who went out.
Send a message via AIM to Wildhoney Send a message via MSN to Wildhoney Send a message via Yahoo to Wildhoney
Wildhoney is offline  
Reply With Quote
The Following User Says Thank You to Wildhoney For This Useful Post:
Orc (05-09-2008)