![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| Stear |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 28.7.2007 Репутация: нет Всего: нет |
Проблема такая. Я написал функцию которая возвращает массив элементов. Как сделать чтобы из массива поочередно выбирались элементы и вызывалась таже самая функция, используя выбранный элемент в качестве параметра? При этом массив должен дозаписываться... То есть получается что число элементов постоянно будет увеличиваться...
|
|||
|
||||
| teroni |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 381 Регистрация: 15.5.2007 Где: Днепропетровск Репутация: 1 Всего: 22 |
Я бы делал примерно так:
Может кривовато, не проверял... Но идея примерно такая. Это сообщение отредактировал(а) teroni - 28.7.2007, 11:31 |
|||
|
||||
| Golda |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 460 Регистрация: 26.3.2007 Где: Ариель, Израиль Репутация: 3 Всего: 42 |
ну, зачем же global, тогда уже хотя бы static.
А вообще, Stear, можно чуть подробнее о задаче? Хотя бы, есть ли у Вас условия выхода из цикла? А то, судя повашей формулировке, планируется бесконечный цикл -------------------- "For every problem, there exists a simple and elegant solution which is absolutely wrong." -- J. Wagoner, U.C.B. Mathematics |
|||
|
||||
| Stear |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 28.7.2007 Репутация: нет Всего: нет |
Вобщем то задача следующая: выбрать все ссылки с сайта которые не ведут на чужой. Так вот я написал функцию которая выдирает все ссылки которые не ведут на чужой сайт+все ссылки в этом массиве уникальны и приведены к одному виду(http://site.ru/итд). Так вот мне нужны чтобы или цикл или рекурсия пробегала по всем ссылкам собирая ссылки на других страницах которые она уже прошла.
Добавлено через 6 минут и 19 секунд Ну и цикл как видете не должен быть бесконечный. Потому что уникальные ссылки рано или поздно кончаться и цикл дойдет до конца. Или я ошибаюсь? И еще такой вопросик... Получиться что этот скрипт будет очень долго выполняться. Как сделать что бы пользователя перекинуло на другую страницу. А скрипт продолжал выполняться? |
|||
|
||||
| Golda |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 460 Регистрация: 26.3.2007 Где: Ариель, Израиль Репутация: 3 Всего: 42 |
Вам нужно что-то типа
В общем, рекурсия + array_merge() Поскольку скрипт будет выполняться довольно долго, во-первых, не забудьте увеличить время выполнения скрипта
0 - для неограниченного времени, можете поставить большое конечное число. Для удобства пользователя можно вывести ему сначала какое-то сообщение типа "Скрипт выполняется. Ждите ответа..." и использовать flush(), чтобы оно действительно попадало к пользователю сразу, а затем уже искать ссылки и показывать их. Если есть вероятность, что смотреть ссылки будут гораздо чаще, чем они будут меняться, я бы разбила скрипт на 2: один собирает ссылки в базу данных и вызывается время от времени, например, cron-ом. А другой выбирает готовые ссылки из базы и показывает пользователю. -------------------- "For every problem, there exists a simple and elegant solution which is absolutely wrong." -- J. Wagoner, U.C.B. Mathematics |
||||
|
|||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Для профи | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |