|
|
|
| Здравствуйте..
Вообщем вот код, он выводит все ссылки с сайта...
$search = file_get_contents('url');
if(preg_match_all("#<a href=\"(.*).html\">(.*)</a>\r\n\t\t\t#i", $search, $out, PREG_SET_ORDER))
{
preg_match("#Ключевые слова: <b><u>(.*)</u></b>#isU", $search, $kls);
$send = "===========\r\nПоиск по: ".$kls[1]."\r\n===========\r\n";
foreach($out as $row)
$send .= $row[2]."\r\n".$row[1].".html\r\n==============================\r\n";
} else {
$send = "По запросу \"".$msg[1]."\" ничего не найдено";
}
echo $send;
| так вот, как сделать так, чтобы выводились не все ссылки, а первые 10 ? | |
|
|
|
|
|
|
|
для: SnooPI
(15.05.2007 в 15:07)
| | поставь счетчик например
i=0
foreach($out as $row)
{
if i<=9 then
{
$send .= $row[2]."\r\n".$row[1].".html\r\n==============================\r\n";
}
else
{
--выход из цикла--
}
i=i+1
}
|
| |
|
|
|
|
|
|
|
для: Mirage
(15.05.2007 в 15:22)
| | нет, так не получается....ведь пхп сначала считает все, а потом выводит....
А так у меня выходит из цикла и не выводит :(
Другой метод должен быть | |
|
|
|
|
|
|
|
для: SnooPI
(15.05.2007 в 15:48)
| | из цикла выход, а не из функции! | |
|
|
|
|
|
|
|
для: Trianon
(15.05.2007 в 15:59)
| | Чето я вас не понял........
Как сделать то правильнее?:) | |
|
|
|
|
|
|
|
для: SnooPI
(15.05.2007 в 16:09)
| | вроде не так все сложно
утебя есть цикл
который в переменную $send - записывает все url - адреса которые нашел с помошью регулярного выражения так или я ошибаюсь?
если да, то значит делаешь как написанно выше и в переменную $send - запишуться первые 10 url адреса, а конец цикла делаешь чтобы зря проходы лишние не делать, хочешь убери его совсем все равно утебя в переменную send - будут находиться первые 10 url | |
|
|
|
|
|
|
|
для: Mirage
(15.05.2007 в 16:22)
| | Не работает так, как вы говорите..
Есть другие способы??
ГУРУ, вы где?:) | |
|
|
|
|
|
|
|
для: SnooPI
(15.05.2007 в 17:51)
| | Покажите окончательный код, который у Вас не работает. | |
|
|
|
|
|
|
|
для: Trianon
(15.05.2007 в 17:56)
| |
<?php
$search = file_get_contents('url');
if(preg_match_all("#<a href=\"(.*).html\">(.*)</a>\r\n\t\t\t#i", $search, $out, PREG_SET_ORDER))
{
preg_match("#Ключевые слова: <b><u>(.*)</u></b>#isU", $search, $kls);
$send = "===========\r\nПоиск по: ".$kls[1]."\r\n===========\r\n";
$i = 0;
foreach($out as $row)
{
if($i <= 15)
{
$send .= $row[2]."<br>".$row[1].".html<br>==============================<br>";
} else {
$send = ":((((((((((((((";
}
$i = $i + 1;
}
} else {
$send = "По запросу \"".$msg[1]."\" ничего не найдено";
}
echo $send;
?>
|
так вот делаю, в браузер выводит :((((((((((((((((((( | |
|
|
|
|
|
|
|
для: SnooPI
(15.05.2007 в 18:35)
| | там не должно стоять
$send = ":((((((((((((((";
а должн ,быть оператор - конец цикла, я просто давно на PHP не программировал не помню как правильно ее вызвать вроде - exit;
вы должны это точно знать | |
|
|
|
|
|
|
|
для: Mirage
(15.05.2007 в 18:43)
| | Ну и толку...вообще ничего не выводит | |
|
|
|
|
|
|
|
для: SnooPI
(15.05.2007 в 19:09)
| | ну не знаю если у тебя точно раньше выводились все сылки, то даже вот такой код должен заработать
<?php
$search = file_get_contents('url');
if(preg_match_all("#<a href=\"(.*).html\">(.*)</a>\r\n\t\t\t#i", $search, $out, PREG_SET_ORDER))
{
preg_match("#Ключевые слова: <b><u>(.*)</u></b>#isU", $search, $kls);
$send = "===========\r\nПоиск по: ".$kls[1]."\r\n===========\r\n";
$i = 0;
foreach($out as $row)
{
if($i <= 15)
{
$send .= $row[2]."<br>".$row[1].".html<br>==============================<br>";
}
$i = $i + 1;
}
}
else
{
$send = "По запросу \"".$msg[1]."\" ничего не найдено";
}
echo $send;
?>
|
| |
|
|
|
|
|
|
|
для: Mirage
(15.05.2007 в 19:21)
| | Нет, не работает...
Mirage, если не знаете точного ответа, то лучше проверяйте сначала у себя где-нибудь...
По теме:Хотелось бы услышать ответа от cheops :) | |
|
|
|
|
|
|
|
для: SnooPI
(15.05.2007 в 22:12)
| |
<?php
$search = file_get_contents('url');
if(preg_match_all("#<a href=\"(.*).html\">(.*)</a>\r\n\t\t\t#i", $search, $out, PREG_SET_ORDER))
{
preg_match("#Ключевые слова: <b><u>(.*)</u></b>#isU", $search, $kls);
$send = "===========\r\nПоиск по: ".$kls[1]."\r\n===========\r\n";
$i = 0;
foreach($out as $row)
{
if(++$i > 15)
break;
$send .= $row[2]."<br>".$row[1].".html<br>==============================<br>\r\n";
}
} else
$send = "По запросу \"".$msg[1]."\" ничего не найдено";
echo $send;
?>
|
[поправлено модератором] | |
|
|
|