Модераторы: Aliance, skyboy, MoLeX, ksnk
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> контент на странице php 
:(
    Опции темы
abalich
Дата 30.5.2007, 16:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 434
Регистрация: 26.2.2007
Где: Воронеж

Репутация: нет
Всего: нет



у меня есть content.php в нем следующий код:
Код

<table cellpadding="0" cellspacing="0" border="0" width="100%">
      <tr>
      <td background="admin/images/gr_top.jpg" style="background-repeat:repeat-x" height="47" class="zagolovok">&nbsp;&nbsp;&nbsp; {$title} </td>
      </tr>
</table>
//start content
Ну типа здесь какой-нибудь текст
//end content

Я хочу поменять текст между //start content и //end content
Файл content.php я открываю так:
Код

$file=file_get_contents("content.php");

HELP!!!


--------------------
Мой дядя самых честных "грабил"...
PM MAIL WWW   Вверх
Golda
Дата 30.5.2007, 16:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 26.3.2007
Где: Ариель, Израиль

Репутация: 1
Всего: 42



Код

$content = '<table cellpadding="0" cellspacing="0" border="0" width="100%">
      <tr>
      <td background="admin/images/gr_top.jpg" style="background-repeat:repeat-x" height="47" class="zagolovok">&nbsp;&nbsp;&nbsp; {$title} </td>
      </tr>
</table>
//start content
Ну типа здесь какой-нибудь текст
//end content';
$str = preg_replace("#//start content\s(.+)//end content#ms", "my text here", $content);




--------------------
"For every problem, there exists a simple and elegant solution which is absolutely wrong." -- J. Wagoner, U.C.B. Mathematics
PM MAIL   Вверх
abalich
Дата 30.5.2007, 16:34 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 434
Регистрация: 26.2.2007
Где: Воронеж

Репутация: нет
Всего: нет



А если вместо //start content и //end content <!--start content--> и соответственно <!--end content-->
код такой?:
Код

$str = preg_replace("#<!--start content-->\s(.+)<!--end content-->#ms", "my text here", $content);

или уже другой?


--------------------
Мой дядя самых честных "грабил"...
PM MAIL WWW   Вверх
Golda
Дата 30.5.2007, 16:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 26.3.2007
Где: Ариель, Израиль

Репутация: 1
Всего: 42



ну да, такой


--------------------
"For every problem, there exists a simple and elegant solution which is absolutely wrong." -- J. Wagoner, U.C.B. Mathematics
PM MAIL   Вверх
abalich
Дата 30.5.2007, 16:38 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 434
Регистрация: 26.2.2007
Где: Воронеж

Репутация: нет
Всего: нет



Тогда спасибо!!!

Добавлено через 5 минут и 41 секунду
А как прочесть между этими же тэгами и вывести через echo!!


--------------------
Мой дядя самых честных "грабил"...
PM MAIL WWW   Вверх
Golda
Дата 30.5.2007, 22:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 26.3.2007
Где: Ариель, Израиль

Репутация: 1
Всего: 42



Код

if (preg_match("#//start content\s(.+)//end content#ms", $content, $match)) {
    echo $match[1];
}



--------------------
"For every problem, there exists a simple and elegant solution which is absolutely wrong." -- J. Wagoner, U.C.B. Mathematics
PM MAIL   Вверх
abalich
Дата 31.5.2007, 13:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 434
Регистрация: 26.2.2007
Где: Воронеж

Репутация: нет
Всего: нет



Как я понял:
В $match[0]=//start_content
В $match[2]=//end_content
 А в $match[1]=Типа текст



--------------------
Мой дядя самых честных "грабил"...
PM MAIL WWW   Вверх
Golda
Дата 31.5.2007, 15:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 26.3.2007
Где: Ариель, Израиль

Репутация: 1
Всего: 42



нет, $match[0] - вся строка, соответствующая шаблону, $match[1] - содержимое первых скобок, $match[2] бы появилось, если бы в pattern были еще скобки. А вообще, посмотреть содержимое массива легко - print_r($match)


--------------------
"For every problem, there exists a simple and elegant solution which is absolutely wrong." -- J. Wagoner, U.C.B. Mathematics
PM MAIL   Вверх
abalich
Дата 31.5.2007, 15:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 434
Регистрация: 26.2.2007
Где: Воронеж

Репутация: нет
Всего: нет



Уже попробовал, всеравно спасибо!!
У меня такой вопрос:
 текста будет очень много, не долго ли будет длиться эта опирация?


--------------------
Мой дядя самых честных "грабил"...
PM MAIL WWW   Вверх
Golda
Дата 31.5.2007, 21:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 460
Регистрация: 26.3.2007
Где: Ариель, Израиль

Репутация: 1
Всего: 42



Точно не узнаете, пока не попробуете. Но вообще, PERL - регулярные выражения работают очень быстро. Мне встречалась только одна ситуация, когда preg_match() занимал ощутимое время: когда в начале регулярного выражения стоял wild-card (*) при разборе мегабайтного текста 


--------------------
"For every problem, there exists a simple and elegant solution which is absolutely wrong." -- J. Wagoner, U.C.B. Mathematics
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | PHP: Тексты | Следующая тема »


 




[ Время генерации скрипта: 0.0491 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.