Автор Тема: Массив - определение позиции +/-  (Прочитано 3585 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн tarya

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 370
  • +0/-0
  • 0
    • Просмотр профиля
Добрый день.

Задача вот в чем. Есть массив (1,3,34,53,21,45,231,2,566). У меня задача - если на данный момент запрашивается елемент с ключем 21 - как определить значения соседствующие с ним? - prev = 53, next=45.

Пробовал так:


if ($n->elements) foreach ($n->elements as $nrows)
{
	
if (
$nrows[\'id\'] == $_GET[\'image\'])
	
{
	
	
$next = next($n->elements);
	
	

	
	
break;
	
}
	
$prev = $nrows;
}


Но получаются глупости. Если $prev = $nrows работает, то Некст .... :/...

Подскажите как быть? Мне для галлереи нужно.

Спасибо за помощь.
Рожденный с понимающим, и гордо поднятым кулаком! Свидетель разреза запястья — он с ним!

Оффлайн tarya

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 370
  • +0/-0
  • 0
    • Просмотр профиля
Массив - определение позиции +/-
« Ответ #1 : 05 Июля 2004, 12:09:57 »
короче масив если более точно такой


Array
(
    [
id] => 37
    
[description] => Ты знаешья верил словам
Я верил в их силу и страсть
Они рвали меня пополам
И не давали упасть

    
[picture] => EVIL_EMPIRE_FRONT_1_.JPG
    
[gallery] => 3
    
[visible] => 1
)
Array
(
    [
id] => 36
    
[description] => Ты знаешья верил словам
Я верил в их силу и страсть
Они рвали меня пополам
И не давали упасть

    
[picture] => BOMBTRACK_FRONT_1_.JPG
    
[gallery] => 3
    
[visible] => 1
)
Array
(
    [
id] => 35
    
[description] => Ты знаешья верил словам
Я верил в их силу и страсть
Они рвали меня пополам
И не давали упасть

    
[picture] => AMERICAN_HEADLINES_FRONT_1_.JPG
    
[gallery] => 3
    
[visible] => 1
)
Array
(
    [
id] => 34
    
[description] => Ты знаешья верил словам
Я верил в их силу и страсть
Они рвали меня пополам
И не давали упасть

    
[picture] => 17.JPG
    
[gallery] => 3
    
[visible] => 1
)
Array
(
    [
id] => 33
    
[description] => Ты знаешья верил себе
Пытаясь найти покой
Как
-будто бы обо мне
Заботился кто
-то другой
Но все
    
[picture] => 12.JPG
    
[gallery] => 3
    
[visible] => 1
)


теперь если ай ди =  35 -  то по краям что будет.

чтото я кручу кручу,.. и некак если чесно. Предыдщую позицию легко найти. а следующую?
Рожденный с понимающим, и гордо поднятым кулаком! Свидетель разреза запястья — он с ним!

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Массив - определение позиции +/-
« Ответ #2 : 05 Июля 2004, 12:52:34 »
$a=array_keys($n->elements)
$key=array_search($a,$_GET[\'image\']))
$prev=$key-1;
$next=$key+1;

дальше проверяем существование и выводим

с порядком аргументов могу напутать,

Оффлайн tarya

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 370
  • +0/-0
  • 0
    • Просмотр профиля
Массив - определение позиции +/-
« Ответ #3 : 05 Июля 2004, 12:59:22 »
Цитировать
RomikChef:
RomikChef


я всегда знал что тут ты самый мозговитый, спасибо.
Рожденный с понимающим, и гордо поднятым кулаком! Свидетель разреза запястья — он с ним!

Оффлайн tarya

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 370
  • +0/-0
  • 0
    • Просмотр профиля
Массив - определение позиции +/-
« Ответ #4 : 05 Июля 2004, 13:33:54 »
ммм... все равно какой то гон получается.

Расмотрим пример:


$arr 
= array(
   
=> 44,
   
=> 324,
   
34 => 23,
   
=> 6544,
   
56 => 44,
   
345 => 44574,
   
56 => 4794
);


$a=array_keys($arr);
$key=array_search(4$a);
$prev=$key-1;
$next=$key+1;

echo 
$prev."|".$next."|".$key;


выводит: 2|4|3.

Чтото не то. Вот задачка интересная вышла.
Рожденный с понимающим, и гордо поднятым кулаком! Свидетель разреза запястья — он с ним!

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Массив - определение позиции +/-
« Ответ #5 : 05 Июля 2004, 14:15:44 »
ну что делать с этими обезьянами?..

Оффлайн Меняздесьдавнонет

  • новичЕк
  • Глобальный модератор
  • Ветеран
  • *****
  • Сообщений: 5698
  • +0/-0
  • 2
    • Просмотр профиля
    • http://
Массив - определение позиции +/-
« Ответ #6 : 05 Июля 2004, 14:17:12 »
сколько раз я зарекался давать готовы й код.
они же тупо копируют, ни бельмеса не понимая, что он делает.
ДАЖЕ не делая попытки разобраться.

я не самый мозговитый. я идиот.
я не дописал в коде одну строчку, и работа встала.
тема закрыта.
все ушлина фронт.

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28