From: Frank Arensmeier on
Have a look at the manual, especially the function "array_values()".

/frank
Skickat från min iPhone.

31 aug 2010 kl. 17:43 skrev Tontonq Tontonq <rootdot(a)gmail.com>:

> a quick question
> lets say i have an array like that
>
>
> Array
> (
> [300] => 300
> [301] => 301
> [302] => 302
> [303] => 303
> [304] => 304
> [305] => 305
> [306] => 306
> [307] => 307
> [308] => 308
> ...
> how can i change keys to 0,1,2,3,.. by faster way
> (it should like that) >
> Array
> (
> [0] => 300
> [1] => 301
> [2] => 302
> [3] => 303
> ....
From: Ashley Sheridan on
On Tue, 2010-08-31 at 19:06 +0300, Tontonq Tontonq wrote:

> Ty four your all replies i got 9 replies less than 10 minutes :)
>
> than can u answer this too
> my array is like that for now
> Array
> (
> [300] => 300
> [301] => 301
> [302] => 302
> [303] => 303
> [304] => 304
> [305] => 305
> [306] => 306
> [307] => 307
> [308] => 308
> [309] => 309
> [310] => 310
> [311] => 311
> [312] => 312
> [313] => 313
> [314] => 314
> [165] => 165
> [166] => 166
> [167] => 167
> [168] => 168
> [169] => 169
> [170] => 170
> [171] => 171
> [172] => 172
> [173] => 173
> [201] => 201
> [202] => 202
> [203] => 203
> [204] => 204
> [205] => 205
> [206] => 206
> [207] => 207
> [208] => 208
> [209] => 209
> [210] => 210
> [211] => 211
> [212] => 212
> [213] => 213
> [214] => 214
> [215] => 215
> [315] => 315
>
> how can i make an array
> that will store values like
> Array
> (
> [0] => 300-314
> [1] => 165-173
> )
>
> i hope if u did understand me :D
>
> 2010/8/31 larry(a)garfieldtech.com <larry(a)garfieldtech.com>
>
> > The fastest way is going to be array_values():
> >
> > http://www.php.net/array_values
> >
> > --Larry Garfield
> >
> >
> > On 8/31/10 10:43 AM, Tontonq Tontonq wrote:
> >
> >> a quick question
> >> lets say i have an array like that
> >>
> >>
> >> Array
> >> (
> >> [300] => 300
> >> [301] => 301
> >> [302] => 302
> >> [303] => 303
> >> [304] => 304
> >> [305] => 305
> >> [306] => 306
> >> [307] => 307
> >> [308] => 308
> >> ...
> >> how can i change keys to 0,1,2,3,.. by faster way
> >> (it should like that)>
> >> Array
> >> (
> >> [0] => 300
> >> [1] => 301
> >> [2] => 302
> >> [3] => 303
> >> ....
> >>
> >>
> > --
> > PHP General Mailing List (http://www.php.net/)
> > To unsubscribe, visit: http://www.php.net/unsub.php
> >
> >


Oops, I slightly mis-read the question there in my last post. I'm not
actually sure what it is you *are* after though.

Thanks,
Ash
http://www.ashleysheridan.co.uk


From: Ashley Sheridan on
On Tue, 2010-08-31 at 16:58 +0100, Richard Quadling wrote:

> On 31 August 2010 16:45, Ashley Sheridan <ash(a)ashleysheridan.co.uk> wrote:
> > There are two ways I see to do it. You can iterate the array and create
> > a copy, assigning elements dynamic values:
> >
> > $new_array = array();
> > foreach($array as $a)
> > {
> > $new_array[] = $a;
> > }
> >
> > or use a sorting function on it that doesn't preserve the keys (as in
> > your example all the values in the array were in numerical order.
> >
> > $new_array = sort($array);
>
> sort() operates in the array. It does not return a new array, just a
> bool to indicate success or not.
>
> http://docs.php.net/sort
>
>
>


Ah, my bad!

Thanks,
Ash
http://www.ashleysheridan.co.uk


From: Richard Quadling on
On 31 August 2010 17:06, Tontonq Tontonq <rootdot(a)gmail.com> wrote:
> Array
> (
> [300] => 300
> [301] => 301
> [302] => 302
> [303] => 303
> [304] => 304
> [305] => 305
> [306] => 306
> [307] => 307
> [308] => 308
> [309] => 309
> [310] => 310
> [311] => 311
> [312] => 312
> [313] => 313
> [314] => 314
> [165] => 165
> [166] => 166
> [167] => 167
> [168] => 168
> [169] => 169
> [170] => 170
> [171] => 171
> [172] => 172
> [173] => 173
> [201] => 201
> [202] => 202
> [203] => 203
> [204] => 204
> [205] => 205
> [206] => 206
> [207] => 207
> [208] => 208
> [209] => 209
> [210] => 210
> [211] => 211
> [212] => 212
> [213] => 213
> [214] => 214
> [215] => 215
> [315] => 315

$newData = array();
$firstValue = null;
$lastValue = null;
foreach($data as $value)
{
// New first value.
if (is_null($firstValue))
{
$firstValue = $value;
$lastValue = null;
}

// New last value and is the same or 1 more.
if (is_null($lastValue))
{
$lastValue = $value;
}

// Is the value this or the next value from $lastValue
else if($value == $lastValue || $value == 1 + $lastValue)
{
$lastValue = $value;
}

// We have a break;
else
{
$newData[] = "$firstValue-$lastValue";
$firstValue = $lastValue = null;
}
}




--
Richard Quadling
Twitter : EE : Zend
@RQuadling : e-e.com/M_248814.html : bit.ly/9O8vFY
From: Tontonq Tontonq on
i think its my mistake it will begin from first value of array it will
continue until if its more big than +2 and it

2010/8/31 Ashley Sheridan <ash(a)ashleysheridan.co.uk>

> On Tue, 2010-08-31 at 19:06 +0300, Tontonq Tontonq wrote:
>
> Ty four your all replies i got 9 replies less than 10 minutes :)
>
> than can u answer this too
> my array is like that for now
> Array
> (
> [300] => 300
> [301] => 301
> [302] => 302
> [303] => 303
> [304] => 304
> [305] => 305
> [306] => 306
> [307] => 307
> [308] => 308
> [309] => 309
> [310] => 310
> [311] => 311
> [312] => 312
> [313] => 313
> [314] => 314
> [165] => 165
> [166] => 166
> [167] => 167
> [168] => 168
> [169] => 169
> [170] => 170
> [171] => 171
> [172] => 172
> [173] => 173
> [201] => 201
> [202] => 202
> [203] => 203
> [204] => 204
> [205] => 205
> [206] => 206
> [207] => 207
> [208] => 208
> [209] => 209
> [210] => 210
> [211] => 211
> [212] => 212
> [213] => 213
> [214] => 214
> [215] => 215
> [315] => 315
>
> how can i make an array
> that will store values like
> Array
> (
> [0] => 300-314
> [1] => 165-173
> )
>
> i hope if u did understand me :D
>
> 2010/8/31 larry(a)garfieldtech.com <larry(a)garfieldtech.com>
>
> > The fastest way is going to be array_values():
> >
> > http://www.php.net/array_values
> >
> > --Larry Garfield
> >
> >
> > On 8/31/10 10:43 AM, Tontonq Tontonq wrote:
> >
> >> a quick question
> >> lets say i have an array like that
> >>
> >>
> >> Array
> >> (
> >> [300] => 300
> >> [301] => 301
> >> [302] => 302
> >> [303] => 303
> >> [304] => 304
> >> [305] => 305
> >> [306] => 306
> >> [307] => 307
> >> [308] => 308
> >> ...
> >> how can i change keys to 0,1,2,3,.. by faster way
> >> (it should like that)>
> >> Array
> >> (
> >> [0] => 300
> >> [1] => 301
> >> [2] => 302
> >> [3] => 303
> >> ....
> >>
> >>
> > --
> > PHP General Mailing List (http://www.php.net/)
> > To unsubscribe, visit: http://www.php.net/unsub.php
> >
> >
>
>
> Oops, I slightly mis-read the question there in my last post. I'm not
> actually sure what it is you *are* after though.
>
>
> Thanks,
> Ash
> http://www.ashleysheridan.co.uk
>
>
>