(PHP) Вопрос по массивам

стыдно
Дата: 26.07.2006 12:01:41
возможно ли внутри конструкции foreach узнать номер current елемента массива?
Anjey aka PM
Дата: 26.07.2006 12:16:30
key(), current()

но это не совсем то что вам надо
4m@t!c
Дата: 26.07.2006 12:17:55
Anjey aka PM, действительно ему это не надо.
стыдно, сформулируйте четко задачу, которую вы пытаетесь решить.
----------------------------------------
Артисты не приехали, приехали цыгане
Anjey aka PM
Дата: 26.07.2006 12:18:58
какой вопрос, такой ответ, а ваще, ангина летом -- жестоко
вот и сижу тут, нечем заняться
стыдно
Дата: 26.07.2006 12:39:30
Есть массив, неважно ассоциативний или нет, поетому key() не подойдет.

Интерация проводится средствами конструкции foreach
foreach ($array as $value)
{
if (first_interation())
{
foo($value);
}
else
{
bar($value);
}
}

как узнать номер интерации, и соответственно номер елемента в массиве, чтоб не переделивать под for

for ($i = 0; $i < sizeof($array); $i++)
{
if (!$i)
{
foo($array($i));
}
else
{
bar($array($i));
}
}
Anjey aka PM
Дата: 26.07.2006 13:00:48
$first_iteration = true;
foreach ($array as $value)
{
if ($first_interation == true)
{
foo($value);
$first_iteration = false;
}
else
{
bar($value);
}
}
стыдно
Дата: 26.07.2006 13:25:40
Anjey aka PM
$first_iteration = true;
foreach ($array as $value)
{
if ($first_interation == true)
{
foo($value);
$first_iteration = false;
}
else
{
bar($value);
}
}


Хотелось немного елегантнее...
Такое и сам могу сварганить
Всеравно, спасиба!
4m@t!c
Дата: 26.07.2006 13:45:13
<?php
function bar($x)
{
   echo 'bar'.$x."<BR>\r\n";
}
function foo($x)
{
   echo 'foo'.$x."<BR>\r\n";
}
$arr = array(0, 1, 2, 3);
reset($arr);
list($key, $val) = each($arr);
foo($val);
while ((list($key, $val) = each($arr)))
{
   bar($val);
}
?>
----------------------------------------
Артисты не приехали, приехали цыгане
Shiz
Дата: 26.07.2006 13:56:45
рекурсия?
free_walker
Дата: 27.07.2006 17:07:07

$lI = 1;

foreach($lArr As $Value){

  if (($lI++) == 1){

  }

  else{
  
  }

}