Автор Тема: XML::Simple  (Прочитано 8756 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн djkostya

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 53
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.jobs.su/
XML::Simple
« : 23 Марта 2006, 00:48:53 »
А как обработать пустой тэг....

нашёл SuppressEmpty => 1

Ну у меня XML формируеться так.....


1
1


Но иногда передаёться следующее

1
1



Так как проверить есть ли она или нет....

Оффлайн ondr

  • Модератор
  • Глобальный модератор
  • Старожил
  • *****
  • Сообщений: 440
  • +0/-0
  • 0
    • Просмотр профиля
XML::Simple
« Ответ #1 : 23 Марта 2006, 03:56:21 »
Цитировать
djkostya:

1
1


"" он не пустой, а ошибочный
0 OK, 0:1

Оффлайн djkostya

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 53
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.jobs.su/
XML::Simple
« Ответ #2 : 23 Марта 2006, 07:04:55 »

1
1



Ой сории вот так

Оффлайн cr4ck3r

  • Фанат Perl
  • Постоялец
  • ***
  • Сообщений: 146
  • +0/-0
  • 2
    • Просмотр профиля
    • http://perlmonks.org.ru
XML::Simple
« Ответ #3 : 23 Марта 2006, 10:46:26 »
все равно не правильно.

1
1


Вот так правильно.
Ворота в perl - perlmonks.org.ru

Оффлайн djkostya

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 53
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.jobs.su/
XML::Simple
« Ответ #4 : 23 Марта 2006, 10:54:46 »
Ну вобщем у меня так.... http://web-list.ru/test1.xml
Но мне надо проверить http://web-list.ru/test.xml
Передаёться или нет она как это сделать XML::Simple

Оффлайн ondr

  • Модератор
  • Глобальный модератор
  • Старожил
  • *****
  • Сообщений: 440
  • +0/-0
  • 0
    • Просмотр профиля
XML::Simple
« Ответ #5 : 23 Марта 2006, 13:30:07 »
SuppressEmpty => ""
0 OK, 0:1

Оффлайн Алан

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 31
  • +0/-0
  • 0
    • Просмотр профиля
    • http://alanrin.com
XML::Simple
« Ответ #6 : 27 Марта 2006, 14:12:06 »

как уже было сказано - не правельно ! Это не по XML-ю :( - Тогда $dic = "", а иначе фигня получается...

А если надо проверить есть ли эта ошибочная конструкция, то надо бы сначала регулярным выражением проверить есть ли она.. если есть удалить/исправить и потом парсить XML::Simple.

Оффлайн djkostya

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 53
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.jobs.su/
XML::Simple
« Ответ #7 : 27 Марта 2006, 14:18:22 »
Я понимаю но если вы не в курсе то принемаеться как я уже догнал об этом

Вот проверка кода XML

http://www.hcrc.ed.ac.uk/~richard/xml-check.cgi?url=http%3A%2F%2Fweb-list.ru%2Ftest.xml

Оффлайн djkostya

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 53
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.jobs.su/
XML::Simple
« Ответ #8 : 27 Марта 2006, 14:19:13 »
То есть конструкция вполне может быть в коде XML и не считаеться ошибкой

Оффлайн Алан

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 31
  • +0/-0
  • 0
    • Просмотр профиля
    • http://alanrin.com
XML::Simple
« Ответ #9 : 27 Марта 2006, 16:31:13 »
Хм... у меня Опера прочитала так:

XML checker results
The document appears to be well-formed. The canonical XML follows:
1 1

Как я вижу

Оффлайн djkostya

  • Завсегдатай
  • Пользователь
  • **
  • Сообщений: 53
  • +0/-0
  • 0
    • Просмотр профиля
    • http://www.jobs.su/
XML::Simple
« Ответ #10 : 27 Марта 2006, 16:49:52 »
Ну да так и должно быть но в XML чтоб не мудрить с придумали то есть это одно и тоже

Оффлайн Алан

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 31
  • +0/-0
  • 0
    • Просмотр профиля
    • http://alanrin.com
XML::Simple
« Ответ #11 : 27 Марта 2006, 16:58:43 »
Хм... надо же... я ошибался, только что сам проверял Expat нормально парсит *удивлён...

Тогда в чём проблемма? Тег dic не попадает в хэш что-ли? или что? В чем проблемма?

Оффлайн Алан

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 31
  • +0/-0
  • 0
    • Просмотр профиля
    • http://alanrin.com
XML::Simple
« Ответ #12 : 27 Марта 2006, 17:00:36 »
Цитировать
djkostya:
Так как проверить есть ли она или нет....


if( defined($hash->{dic}) ) { ... } - не оно?

Оффлайн Алан

  • Завсегдатай
  • Новичок
  • *
  • Сообщений: 31
  • +0/-0
  • 0
    • Просмотр профиля
    • http://alanrin.com
XML::Simple
« Ответ #13 : 27 Марта 2006, 17:05:25 »
Вообще пример кода хотелось бы и пояснения, где не правельно работает...

Оффлайн vladsu

  • Фанат форума
  • Старожил
  • ****
  • Сообщений: 271
  • +0/-0
  • 0
    • Просмотр профиля
    • http://vladislavsurguchev.eu/
XML::Simple
« Ответ #14 : 11 Апреля 2006, 00:27:43 »
Чтобы проверить
print "Est\'\\n" if exists $xml->{dic};

Но если есть таг, но пустой то создасться пустой хэш, т.е. ссылка на анонимный ничем не заполненный хэш. Ну а с хэшами надеюсь работать умеете.
----------------------------------------------
Мой сайт чёрно-белых фотографий из разных уголков мира тут

 

Sitemap 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28