HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #21  
Старый 03.03.2010, 02:18
dr.Web
Участник форума
Регистрация: 02.02.2009
Сообщений: 146
С нами: 9090281

Репутация: 43
По умолчанию

Цитата:
Сообщение от Pashkela  
молодец, а говорил не знаешь



а теперь представь, что не на предыдущую, а на две-двадцать назад, и ключи у массива не идут так - 1,2,3,4,5,6, а, например, так - 1,11,34,45,67,89,90
тогда while
 
Ответить с цитированием

  #22  
Старый 03.03.2010, 02:19
Pashkela
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
С нами: 9649706

Репутация: 3338


По умолчанию

а вот и нет, вопрос был про foreach )) Ну просто представь себе, нет while
 
Ответить с цитированием

  #23  
Старый 03.03.2010, 02:28
dr.Web
Участник форума
Регистрация: 02.02.2009
Сообщений: 146
С нами: 9090281

Репутация: 43
По умолчанию

вот смотри его код
PHP код:
foreach($keys as $key)
{

echo 
$key;
if(
$key == ...)
prev($key); // не работает 

ясен хрен не будет работать prev()
$key этож не массив


а если попробовать так(просто поправка скрипта ТСа )
PHP код:
$keys=range(1,100);


foreach(
$keys as $i=>$key)  
{  
echo 
$key."<br>";
if(
$key == 20){echo prev($keys)."<br>";}

 
Ответить с цитированием

  #24  
Старый 03.03.2010, 02:31
Pashkela
Динозавр
Регистрация: 10.01.2008
Сообщений: 2,841
С нами: 9649706

Репутация: 3338


По умолчанию

вот теперь да)
 
Ответить с цитированием

  #25  
Старый 03.03.2010, 02:34
dr.Web
Участник форума
Регистрация: 02.02.2009
Сообщений: 146
С нами: 9090281

Репутация: 43
По умолчанию

тс пропал наверно уже неактуал тема ))
 
Ответить с цитированием

  #26  
Старый 04.03.2010, 01:08
SQLHACK
Голос разума
Регистрация: 27.09.2006
Сообщений: 529
С нами: 10326626

Репутация: 1617


По умолчанию

Поставим жирную точку!

Foreach не умеет возможности управлением индексом, он всегда идет от первого к последнему элементу.

Но если вам все таки требуется такая возможность, то решается она с помощью цикла While

Далее код демонстрирующий как это делается:
PHP код:
<?php
$array 
= array ( 'a''b''c''d''e''f') ;

//Флаг направления, закоментируй одну из двух
$flag 0;reset($array); //вперед
//$flag = 1;end  ($array); //назад


while($value current($array)){
    echo 
$value."\r\n<br>";
    if(
$flag == 0){         //Следующий элемент
        
next($array);    
    }elseif(
$flag == 1){    //Предыдущий элемент
        
prev($array);
    }
}

?>
То есть внутри цикла вы можете как угодно вертеть направление прохода, то туда то обратно, сколько вам вздумается.
__________________
Бойтесь своих желаний. Они могут исполниться....

...О-о-о-о, ушами не услышать, глазами не понять!
 
Ответить с цитированием
Ответ



Предыдущая тема Следующая тема
Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Фейки dgonik777 Уязвимости Mail-сервис 34 14.06.2009 04:01
Быстро всем читать это очень интересно. Надо срочно найти этот способ если он есть. White Jordan Болталка 0 27.03.2005 05:12



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.