Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP на примерах (2 издание). Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL на примерах. Авторы: Кузнецов М.В., Симдянов И.В. Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум Регулярные Выражения

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Разобрать файл конфигурации
 
 автор: AAAlex2005   (17.01.2006 в 23:51)   письмо автору
 
 

Имеется файл конфигурации, вот к примеру:

<serverconfig>
<greeting>
Hello World!
</greeting>
<prefix>pref</prefix>
<sufix>suf</sufix>
</serverconfig>

при выполнении php-скрипта необходимо открыть файл и присвоить переменным $greeting, $prefix, $sufix соответствующие значения из файла конфигурации. Подскажите, пожалуйста, как это сделать.

Заранее очень благодарен!

   
 
 автор: cheops   (18.01.2006 в 01:20)   письмо автору
 
   для: AAAlex2005   (17.01.2006 в 23:51)
 

Для этого удобно использовать регулярные выражения
<?php
  $str 
"<serverconfig>
<greeting>
Hello World!
</greeting>
<prefix>pref</prefix>
<sufix>suf</sufix>
</serverconfig>"
;
  
$pattern "|<greeting>(.*)</greeting>|isU";
  
preg_match($pattern,$str,$out);
  
$greeting $out[1];
  
$pattern "|<prefix>(.*)</prefix>|isU";
  
preg_match($pattern,$str,$out);
  
$prefix $out[1];
  
$pattern "|<sufix>(.*)</sufix>|isU";
  
preg_match($pattern,$str,$out);
  
$sufix $out[1];
  echo 
$greeting."<br>";
  echo 
$prefix."<br>";
  echo 
$sufix."<br>";
?>

   
 
 автор: AAAlex2005   (18.01.2006 в 01:25)   письмо автору
 
   для: cheops   (18.01.2006 в 01:20)
 

Большое Вам спасибо, Вы меня очень выручили!

   
 
 автор: localGhost   (24.01.2006 в 06:12)   письмо автору
 
   для: AAAlex2005   (18.01.2006 в 01:25)
 

ведь это XML структура, не проще будет разобрать с помощью XML функций а не через рег. выражения?

   
 
 автор: cheops   (24.01.2006 в 13:40)   письмо автору
 
   для: localGhost   (24.01.2006 в 06:12)
 

Мне наоборот кажется проще разобрать XML-файл через регулярные выражения, кроме того, они позволяют работать с некоректными XML-файлами (недогруженными, например), а парсеры нет :(

   
 
 автор: localGhost   (25.01.2006 в 03:00)   письмо автору
 
   для: cheops   (24.01.2006 в 13:40)
 

насчет недогруженных - согласен, но если файл лежит на сервере и мы его сами создали, то ошибок как бы не должно быть. В этом случае парсер уступает рег. выраж?.. ИМХО с парсером работать проще потому что "подстроиться" нужно только под полученный массив (в случае изменения структуры файла).. а это как я убедился не так уж и сложно.

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования