Re: [PHP] array_shift and php 4.0.4

2002-01-10 Thread [EMAIL PROTECTED]


Strange, are you sure it's 4.0.4 ??

The manual for array_shift() says it's supported from 4.0.0 .

Maybe try the alias array_pop() ?

otherwise there'll be other ways to strip the first part of the directory,
for example using regexp, try something like:

?
ereg(^[^/]/(.*)$, dirname($PHP_SELF), $regs);
$c = explode(/, $regs[1]);
?


On Wed, 09 Jan 2002 22:00:49 -0500, Gerard Samuel wrote:

Hey all.  Im putting together a script and Im having a couple people 
test it out.

Here is a bit of code...

$c = explode ('/', dirname($PHP_SELF));
array_shift($c);

It runs fine on my box, php 4.0.6, apache 1.3.22.

On a box with php 4.0.4pl1, apache 1.3.20 it spits an error.
Fatal error: Call to unsupported or undefined function array_shift() in 
file.php on line 15

Where/Is there anything wrong with 4.0.4??



-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]






-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP] array_shift and php 4.0.4

2002-01-10 Thread Jason Wong

On Thursday 10 January 2002 17:38, [EMAIL PROTECTED] wrote:
 Strange, are you sure it's 4.0.4 ??

 The manual for array_shift() says it's supported from 4.0.0 .

 Maybe try the alias array_pop() ?

array_pop() and array_shift are *different* :)

array_pop() takes an element off the END of the array.
array_shift() takes an element off the START of the array.


-- 
Jason Wong - Gremlins Associates - www.gremlins.com.hk

/*
Never pay a compliment as if expecting a receipt.
*/

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP] array_shift and php 4.0.4

2002-01-10 Thread Gerard Samuel

Yeah its 4.0.4.  I figure it strange also since array_shift was there 
since 4.0.0.
array_pop(), isn't that for the last element.  I want to take out the 
first element, thus array_shift.
Ill try the regexp and see how it goes...
Ill report back
Thanks

[EMAIL PROTECTED] wrote:

 Strange, are you sure it's 4.0.4 ??
 
 The manual for array_shift() says it's supported from 4.0.0 .
 
 Maybe try the alias array_pop() ?
 
 otherwise there'll be other ways to strip the first part of the directory,
 for example using regexp, try something like:
 
 ?
   ereg(^[^/]/(.*)$, dirname($PHP_SELF), $regs);
   $c = explode(/, $regs[1]);
 ?
 
 
 On Wed, 09 Jan 2002 22:00:49 -0500, Gerard Samuel wrote:
 
 
Hey all.  Im putting together a script and Im having a couple people 
test it out.

Here is a bit of code...

$c = explode ('/', dirname($PHP_SELF));
array_shift($c);

It runs fine on my box, php 4.0.6, apache 1.3.22.

On a box with php 4.0.4pl1, apache 1.3.20 it spits an error.
Fatal error: Call to unsupported or undefined function array_shift() in 
file.php on line 15

Where/Is there anything wrong with 4.0.4??



-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]



 
 
 
 



-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP] array_shift and php 4.0.4

2002-01-10 Thread [EMAIL PROTECTED]



You are right, I should've known (used it before) ..

Ofcourse you could do an array_reverse() before and after,
don't know about the performance impact of that however.

bvr.

array_pop() and array_shift are *different* :)

array_pop() takes an element off the END of the array.
array_shift() takes an element off the START of the array.




-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP] array_shift and php 4.0.4

2002-01-10 Thread Gerard Samuel

Thats my biggest concern now, performance with whatever alternatives 
that can be dreamed up...
Anyway, its 6 in the morning, time for sleep.  Maybe Ill dream up 
something else

[EMAIL PROTECTED] wrote:

 
 You are right, I should've known (used it before) ..
 
 Ofcourse you could do an array_reverse() before and after,
 don't know about the performance impact of that however.
 
 bvr.
 
 
array_pop() and array_shift are *different* :)

array_pop() takes an element off the END of the array.
array_shift() takes an element off the START of the array.

 
 
 
 



-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP] array_shift and php 4.0.4

2002-01-10 Thread Jason Wong

On Thursday 10 January 2002 18:54, [EMAIL PROTECTED] wrote:
 You are right, I should've known (used it before) ..

 Ofcourse you could do an array_reverse() before and after,

LOL !!

 don't know about the performance impact of that however.


 array_pop() and array_shift are *different* :)


-- 
Jason Wong - Gremlins Associates - www.gremlins.com.hk

/*
When the blind lead the blind they will both fall over the cliff.
-- Chinese proverb
*/

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]




Re: [PHP] array_shift and php 4.0.4

2002-01-10 Thread [EMAIL PROTECTED]


Actually, my 'don't know' was more like 'does anyone know?' .

But I figured I could find that out for myself.

Wrote a small script that creates an array (numeric indexed range) of
10,000 elements.

Then it calls array_reverse() on it 100 times.

This took a little more than 3 secs. on a P3, which is relatively slow IMO.

Ofcourse two calls won't really hurt if you have a fast server.

A larger array of 100,000 elements took more then 30 secs. (hit the timelimit) ..

So the speed is clearly affected by the size of the array, *maybe* even by the size of 
the elements ..

Here's the code I used to test:

?php

   set_time_limit(3600);

   $arr = range(1, 1);


   start_clock();

   for ($i = 0; $i  100; $i++)
   {
  array_reverse($arr);
   }

   echo(get_clock() . \n);


   // timer functions

   function start_clock()
   {
  global $start;

  $start = microtime();
   }

   function get_clock()
   {
  global $start;

  $stop = microtime();

  $start = split( , $start);
  $stop = split( , $stop);

  $start = (float)$start[0] + $start[1];
  $stop = (float)$stop[0] + $stop[1];

  $time = $stop - $start;

  $htime = (int)($time / 3600);
  $time -= ($htime * 3600);

  $mtime = (int)($time / 60);
  $time -= ($mtime * 60);

  $stime = ((int)($time * 100) / 100);

  $stime = ereg_replace(\., s, $stime);

  if ($htime)
  {
 $clock = $htime . H;
  }

  if ($mtime)
  {
 $clock .= $mtime . m;
  }

  return $clock . $stime . h;
   }
?


On Thu, 10 Jan 2002 05:54:49 -0500, Gerard Samuel wrote:

Thats my biggest concern now, performance with whatever alternatives 
that can be dreamed up...
Anyway, its 6 in the morning, time for sleep.  Maybe Ill dream up 
something else

[EMAIL PROTECTED] wrote:

 
 You are right, I should've known (used it before) ..
 
 Ofcourse you could do an array_reverse() before and after,
 don't know about the performance impact of that however.
 
 bvr.
 
 
array_pop() and array_shift are *different* :)

array_pop() takes an element off the END of the array.
array_shift() takes an element off the START of the array.




-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]