2014-09-18 3 views
1

Я пишу функцию импорта в PHP для импорта новостей от издателя. их API дает мне newsml1.2 ответ формат назад, все хорошо, но тело новости выглядит как этонезнакомец html content to normal html

%26lt%3Bp%26gt%3B4+ya%C5%9F%C4%B1ndalar%2C+1+milyon+liradan+fazla+bor%C3%A7lar%C4%B1+var%26lt%3B%2Fp%26gt%3B%26lt%3Bp%26gt%3B- 

Я понятия не имею, что формат является то, что и я попытался с помощью этих функций, но ничего изменить:

  $body = mysql_real_escape_string($body); 
      iconv(mb_detect_encoding($body, mb_detect_order(), true), "UTF-8", $body); 
      htmlspecialchars($body, ENT_NOQUOTES, "UTF-8"); 
      $body = nl2br(html_entity_decode($body)); 

может кто-нибудь сказать мне, что я должен делать. спасибо

p.s.

Я использую локон для получения списка новостей:

 $ch = curl_init(); 
     curl_setopt($ch, CURLOPT_URL, $url); 
     curl_setopt($ch, CURLOPT_ENCODING, "UTF-8"); 
     curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
     curl_setopt($ch, CURLOPT_USERPWD, $HAS_USERNAME . ":" . $HAS_PASSWORD); 
     curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC); 
     $response = curl_exec($ch); 

чем с SimpleXML

$xml = @simplexml_load_string($response); 

ответ

4

Использование urldecode() на ответ:

header('Content-Type: text/html; charset=utf-8'); 
$response = '%26lt%3Bp%26gt%3B4+ya%C5%9F%C4%B1ndalar%2C+1+milyon+liradan+fazla+bor%C3%A7lar%C4%B1+var%26lt%3B%2Fp%26gt%3B%26lt%3Bp%26gt%3B-'; 
$response = urldecode($response); 
echo $response; // <p>4 yaşındalar, 1 milyon liradan fazla borçları var</p><p>- 
+0

ДА! оно работает!! большое спасибо!! – Xiabili

+0

@ Xiabili уверен, рад, что это помогло – Ghost