Массивы. Индексы и значения.

chillz

Guest
Массивы. Индексы и значения.

У меня такая ситуация
есть скрипт, который создает массив из файла(в данном случае - новости), парсит строку и далее все вытекающие(показать новости и т.д.), далее он разбивает массив на части и выводит по страницам. Но когда переходишь с первой страницы на вторую, ключи снова идут с 0 по 5 (5 items per page).
Так вот, нужно следующее решение. Можно ли сделать так, что бы сразу после того как из файла создается массив, ключи фиксировались, и какие бы манипуляции не происходили с массивом, они не менялись. Возможно ли это? Спасибо.
 

Фанат

oncle terrible
Команда форума
данный вопрос показывает полнейшее непонимание того, что такое пхп, и как оно работает.
Настоятельно рекомендуется прочесть PHP FAQ: Самые основы. Как работает PHP., чтобы мысли начали работать в правильном направлении, и чтобы вопросов про то, "как разными сриптами работать с одним массивом" НИКОГДА больше не появлялось.

Решение же "проблемы индекса" очень простое.
При постраничном выводе передавать по ссылке в скрипт тот самый индекс, с которого надо выводить на этой странице.
 

chillz

Guest
Автор оригинала: Фанат
данный вопрос показывает полнейшее непонимание того, что такое пхп, и как оно работает.
Настоятельно рекомендуется прочесть PHP FAQ: Самые основы. Как работает PHP., чтобы мысли начали работать в правильном направлении, и чтобы вопросов про то, "как разными сриптами работать с одним массивом" НИКОГДА больше не появлялось.

Решение же "проблемы индекса" очень простое.
При постраничном выводе передавать по ссылке в скрипт тот самый индекс, с которого надо выводить на этой странице.
прошу прощения за некорректный вопрос!!!

все это, конечно же, в одном скрипте (файле)

исправляюсь. вопрос остается в силе.
 

Фанат

oncle terrible
Команда форума
ВОПРОС
про "фиксацию ключей" и "изменения с файлом"
НЕ
ИМЕЕТ
СМЫСЛА.

И оставаться в силе не должен.
как решить проблему с индексами, я написал выше.
Какие проблемы с реализацией предложенного мной метода?
 

chillz

Guest
Попробую обьяснить снова.
PHP:
$totalNews = count($data);
    $totalpages = $totalNews / $display;
    $totalpages = ceil($totalpages);
    $count = "1";
     while ($count <= $totalpages) {
     echo "<a href=?view=archive&page=".$count.">".$count."</a>";
     $count++;
     }
То есть, скрипт рабочий, элементы показывает верно (5 на стр.), но скрипт устроен так, что если сообшение превышает 200 символов, добавляется линк на просмотр этой новости в полном обьеме по ее КЛЮЧУ! А если я, предположим, нахожусь на второй странице, следовательно, ключи снова задаются с 0.
и если я хочу прочесть первую новость на второй странице, открывается первая новость с начала массива (которая находится уже на первой странице). вот в чем проблема.
 

Фанат

oncle terrible
Команда форума
А если я, предположим, нахожусь на второй странице, следовательно, ключи снова задаются с 0.
С какой это радости?
ты массив обрезаешь, что ли? А ЗАЧЕМ?
 

chillz

Guest
да, именно. массив обрезается. по мере своего образования в пхп, альтернативы не вижу.
код выглядит так:
PHP:
$display = 5;
$start = ($page * $display) - $display;
$news = array_slice($data, $start, $display);
подскажите?
 

Фанат

oncle terrible
Команда форума
подсказываю. убрать этот код нафиг

-~{}~ 03.03.05 23:00:

зачем ты обрезаешь массив перед выводом?
почему бы не подставить в цикл те же самые начальное и конечное значение, которые ты подставляешь в array_slice?
 

chillz

Guest
Теоритически понимаю как это сделать. а вот КАК это сделать, не догнать. 911!
 
Сверху