вот<br />
этот<br />
текст<br />
нужно<br />
остваить<br />
<!--begin_auth_cache-->
123<br/>
<!--end_auth_cache-->
вот<br />
этот<br />
текст<br />
нужно<br />
остваить<br />
И скрипт:
<?
function GetPage() {
$file = fopen('1.txt','r');
while(!feof($file)){
$cp .= fgets($file);
}
fclose($file);
$pos_begin = strpos($cp,"<!--begin_auth_cache-->");
$pos_end = strpos($cp,"<!--end_auth_cache-->");
echo $cp;
}
GetPage();
?>
Подскажите, как через substr, вырезать всё, что между $pos_begin и $pos_end?
Спустя 3 минуты, 10 секунд (4.07.2011 - 15:41) tatti написал(а):
включая ключи или без?
Спустя 5 минут, 24 секунды (4.07.2011 - 15:46) papa_serg написал(а):
без них
Спустя 2 минуты, 1 секунда (4.07.2011 - 15:48) phz написал(а):
$file = file_get_contents('1.txt');
# Определяем позицию строки, до которой нужно все отрезать
$pos = strpos($file, '<!--begin_auth_cache-->');
# Отрезаем все, что идет до нужной нам позиции
$file = substr($file, $pos);
# Находим позицию второй строки
$pos = strpos($file, '<!--end_auth_cache-->');
# Вырезаем нужное количество символов от нулевого
echo substr($file, 0, $pos);
Спустя 5 минут, 3 секунды (4.07.2011 - 15:53) papa_serg написал(а):
Не, то. Он наоборот вырезает всё, кроме того что нужно.
Нужно вырезать только то, что находиться между <!--begin_auth_cache--><!--end_auth_cache-->
Отсальное оставить.
Нужно вырезать только то, что находиться между <!--begin_auth_cache--><!--end_auth_cache-->
Отсальное оставить.
Спустя 2 минуты, 5 секунд (4.07.2011 - 15:55) killer8080 написал(а):
а почему бы регулярку не использовать?
Спустя 7 минут, 42 секунды (4.07.2011 - 16:03) papa_serg написал(а):
killer8080, между этими 2мя комментариями может быть сотня строк <html> кода.
Или регулярка справиться?
Или регулярка справиться?
Спустя 4 минуты, 3 секунды (4.07.2011 - 16:07) killer8080 написал(а):
да справиться,
а на сабстрингах как то так
а на сабстрингах как то так
<?php
function GetPage() {
$file = fopen('1.txt','r');
while(!feof($file)){
$cp .= fgets($file);
}
fclose($file);
$pos_begin = strpos($cp,"<!--begin_auth_cache-->");
$pos_end = strpos($cp,"<!--end_auth_cache-->");
echo substr($cp, 0, $pos_begin).substr($cp, ($pos_end + strlen('<!--end_auth_cache-->')));
}
GetPage();
?>
Спустя 1 минута, 8 секунд (4.07.2011 - 16:08) killer8080 написал(а):
кстати, а если в контенте такой блок окажется не один?
Спустя 1 минута, 1 секунда (4.07.2011 - 16:09) papa_serg написал(а):
killer8080, спасибо. Один =)
Спустя 10 секунд (4.07.2011 - 16:09) Zerstoren написал(а):
Мб данные лучше хранить в XML, JSON, Serialize
они отлично справятся с вашими задачами)
они отлично справятся с вашими задачами)