X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость ( Вход | Регистрация )

Открыть тему
Тема закрыта
> PHP вновь требуется помощь.
ParavoZ
ParavoZ
Topic Starter сообщение 9.8.2010, 14:02; Ответить: ParavoZ
Сообщение #1


G
*******

Группа: Active User
Сообщений: 2522
Регистрация: 5.1.2009
Поблагодарили: 1329 раз
Репутация:   167  


<?php
$id = 10;
$msv = array();
while(count($msv) < 100)
$b=0;
{
$vip = file_get_contents("http://lenta.ru/ukraine/2010/07/".$id."/");
$n = preg_match_all('!<span class=title><a href=(.*)>.*</a></span></p>!i', $vip, $result);
for($a = count($msv);$a < ($n + count($msv));$a++)
{
$b=0;
$msv[$a] = $result[1][$b];
$b++;
}
echo count($msv);
$id++;
}

if($msv)
{
for($lol=0;$a<count($msv);$a++)
{
echo $$msv[$lol].' -'.$lol.'<br>';
}
};
echo count($msv);
?>


Суть скрипта - взять не менее ста ссылок с ленты.ру. Когда их будет больше - скрипт прекратит их парсить

Выдается ошибка на 11 строчке:

Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 35 bytes) in Z:\home\test1.ru\www\php.php on line 11


Вопрос - почему? Никак не пойму.

Сообщение отредактировал ParavoZ - 9.8.2010, 14:06
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
neebo
neebo
сообщение 9.8.2010, 14:08; Ответить: neebo
Сообщение #2


Новичок
*

Группа: User
Сообщений: 26
Регистрация: 5.8.2010
Из: Москва
Поблагодарили: 4 раза
Репутация:   1  


добавлять новый эелемент можно попробовать так
$msv[] = $result[1][$a];

Сообщение отредактировал neebo - 9.8.2010, 14:09


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
centurion
centurion
сообщение 9.8.2010, 14:11; Ответить: centurion
Сообщение #3


Топовый постер
*******


Группа: Active User
Сообщений: 2831
Регистрация: 10.12.2007
Из: aceweb
Поблагодарили: 1349 раз
Репутация:   308  


(ParavoZ @ 9.8.2010, 14:02) *
Вопрос - почему? Никак не пойму.

Элементарно просто. Сейчас Венера за Марс зашла smile.gif
Погоди среди, они по местам расставятся и все заработает. smile.gif

Сообщение отредактировал centurion - 9.8.2010, 14:12


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Jaroslove
Jaroslove
сообщение 9.8.2010, 14:13; Ответить: Jaroslove
Сообщение #4


Частый гость
**

Группа: User
Сообщений: 95
Регистрация: 5.7.2010
Из: Россия
Поблагодарили: 42 раза
Репутация:   8  


Ошибка, т.к. оперативка, выделенная под скрипт переполняется. Как исправить пока не знаю.


--------------------


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
WebAction
WebAction
сообщение 9.8.2010, 14:13; Ответить: WebAction
Сообщение #5


Топовый постер
*******

Группа: Super Moderator
Сообщений: 3059
Регистрация: 18.11.2009
Поблагодарили: 2512 раз
Репутация:   249  


Я так понимаю, что если не более 100 строк, то они парсятся и добавляются в массив. я прав?


--------------------


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ParavoZ
ParavoZ
Topic Starter сообщение 9.8.2010, 14:17; Ответить: ParavoZ
Сообщение #6


G
*******

Группа: Active User
Сообщений: 2522
Регистрация: 5.1.2009
Поблагодарили: 1329 раз
Репутация:   167  


neebo, спасибо) Я сам переделал чутка код, но ваш вариант определенно проще
<?php
$id = 10;
$msv = array();
while(count($msv) < 20)
{
$vip = file_get_contents("http://lenta.ru/ukraine/2010/07/".$id."/");
$n = preg_match_all('!<span class=title><a href=(.*)>.*</a></span></p>!i', $vip, $result);
for($a = 0;$a < $n ;$a++)
{

$msv[] = $result[1][$a];

}
echo count($msv).'<br>';
$id++;
}

if($msv)
{
for($lol=0;$lol<count($msv);$lol++)
{
echo $msv[$lol].' -'.$lol.'<br>';
}
};
echo count($msv);
?>



WebAction, да уже разобрались, все что нужно) я и сам затупил чутка, забыл про метод $msv[], потом сам переделал с другими переменнами тоже работает, но метод neebo самое то

Сообщение отредактировал ParavoZ - 9.8.2010, 14:23
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
WebAction
WebAction
сообщение 9.8.2010, 14:24; Ответить: WebAction
Сообщение #7


Топовый постер
*******

Группа: Super Moderator
Сообщений: 3059
Регистрация: 18.11.2009
Поблагодарили: 2512 раз
Репутация:   249  


Я бы узнал что нужно и написал бы по своему)))


--------------------


Поблагодарили: (1)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
ParavoZ
ParavoZ
Topic Starter сообщение 9.8.2010, 14:28; Ответить: ParavoZ
Сообщение #8


G
*******

Группа: Active User
Сообщений: 2522
Регистрация: 5.1.2009
Поблагодарили: 1329 раз
Репутация:   167  


WebAction, да уже написал) все равно спасибо за отклик)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Открытая тема (нет новых ответов) Требуется дизайн буклета
0 Mukis 188 Сегодня, 13:42
автор: Mukis
Открытая тема (нет новых ответов) Нужны услуги php-разработчика, бартером за дизайн
вы мне скрипт, я вам дизайн
0 Caterpillar 253 Вчера, 23:15
автор: Caterpillar
Открытая тема (нет новых ответов) [Требуется] Ищу грамотного спеца по РК (direct, adwords)
0 b3rsus 263 Вчера, 15:57
автор: b3rsus
Открытая тема (нет новых ответов) Безвозмездная помощь в социальных сетях
Инвайты, посты, репосты, лайки и тп
9 PostBrigada 2302 16.12.2017, 15:47
автор: WildWeb8
Открытая тема (нет новых ответов) Нужна помощь в активации аккаунта AdSense
10 dimaguru 2618 15.12.2017, 11:12
автор: Ley


 



RSS Текстовая версия Сейчас: 18.12.2017, 21:03
Дизайн