Re: Finding next recored in a array

From: Date: Sun, 16 Sep 2007 23:35:30 +0000
Subject: Re: Finding next recored in a array
References: 1 2  Groups: php.general 
Request: Send a blank email to php-general+get-262151@lists.php.net to get a copy of this message
brian wrote:
Richard Kurth wrote:
$Campaign_array| = array('0','1','3','5','8','15','25');| I know that I can find the next recored in a array using next. What I do not understand is if I know the last number was say 5 how do I tell the script that that is the current number so I can select the next record ||
I think you'll need your own function for this. Pass in the array and loop through it until you find the key, increment that, ensure that there is another value with that key, and return the key (or the value). (untested) function nextInArray($arr, $val) {
    $next_key = NULL;
    for ($i = 0; $i < sizeof($arr);$i++)
    {
        if ($arr[$i] == $val)
        {
            $next_key = ++$i;
            break;
        }
    }
    // return the key:
    return (array_key_exists($next_key) ? $next_key : NULL);
    // or the value:
    return (array_key_exists($next_key) ? $arr[$next_key] : NULL);
} However, in your example, you're searching for the key that points to the value '5'. What if the value '5' occurs more than once? brian In my script the value of 5 will not reoccur the numbers are number of days from 0 up to 30 days.
Thanks for the function

« previous php.general (#262151) next »