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

Форум PHP

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

 

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

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

тема: Что означают коды типа " и как от них избавиться?
 
 автор: Владимир55   (23.07.2007 в 23:48)   письмо автору
 
 

В выдаче Яндекса на xml запрос имеются не предусмотренные регламентом коды типа "

<passage>&#34;Сумчатое&#34; настроение на лето
<passage>Художественный фильм &#34;Мое лето любви&#34;
<passage>Летом надо отдыхать, а&#160;деньги, сэкономленные при покупке автомобиля Ford у&#160;Атлант-М Либерти, будет очень приятно тратить где-нибудь на&#160;пляжах и&#160;в&#160;сувенирных лавках Турции или Египта.

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

Как бы текст очистить от этих кодов? Что бы при любой комбинации цифр эти коды не пролезали в текст?

   
 
 автор: Ziq   (24.07.2007 в 00:55)   письмо автору
 
   для: Владимир55   (23.07.2007 в 23:48)
 

как вариант

preg_replace('|&#[0-9]+;|', '', $str);

   
 
 автор: Unkind   (24.07.2007 в 13:14)   письмо автору
 
   для: Ziq   (24.07.2007 в 00:55)
 

Ну тогда уж
<?php
$string 
preg_replace("/&#([0-9]+);/e""chr(\\1)"$string);
$string preg_replace("/&#x([0-9a-fA-F]+);/e""chr(hexdec(\\1))"$string);
?>

   
 
 автор: kasmanaft   (24.07.2007 в 06:41)   письмо автору
 
   для: Владимир55   (23.07.2007 в 23:48)
 

&#34; - цифровая мнемоника - эквивалент символьной &quot;
&#160; - аналогично &nbsp;

Так что с ними можно ничего не делать...
ну или позаменять на символьные, чтоб понятнее было)

   
 
 автор: Trianon   (24.07.2007 в 13:32)   письмо автору
 
   для: Владимир55   (23.07.2007 в 23:48)
 

Похоже, Вы некорректно разбираете XML-отклик.
При корректном разборе таких "корявок" не будет.

Код &#34; в XML означает то же что и chr(34) в php.

   
 
 автор: Владимир55   (24.07.2007 в 16:09)   письмо автору
 
   для: Trianon   (24.07.2007 в 13:32)
 

Сейчас посмотрел - эти коды приходят прямо с первородным ответом, до разбора и обработки.

   
 
 автор: Trianon   (24.07.2007 в 16:32)   письмо автору
 
   для: Владимир55   (24.07.2007 в 16:09)
 

>Сейчас посмотрел - эти коды приходят прямо с первородным ответом, до разбора и обработки.

Никто и не сомневался. Там они и должны быть именно в таком виде.

И стандартом XML (который Вы называете регламентом) эти символы предусмотрены.

   
 
 автор: kasmanaft   (24.07.2007 в 19:48)   письмо автору
 
   для: Trianon   (24.07.2007 в 13:32)
 

> Код &#34; в XML означает то же что и chr(34) в php.
Но не тоже самое, что &#34; (или &quot;) в HTML?

   
 
 автор: Trianon   (24.07.2007 в 19:51)   письмо автору
 
   для: kasmanaft   (24.07.2007 в 19:48)
 

наверное то же.
Но задача-то была не в HTML данные получить. А в plain-text.
Иначе эти закорючки Владимира не испугали и не удивили бы.

   
 
 автор: P@Sol   (24.07.2007 в 16:36)   письмо автору
 
   для: Владимир55   (23.07.2007 в 23:48)
 

>Как бы текст очистить от этих кодов? Что бы при любой комбинации цифр эти коды не пролезали в текст?
а разве html эти коды не должен переводить в символы при выводе в браузер???

   
Rambler's Top100
вверх

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