Ben RSS cURL kullanarak beslemeleri listesini kazıma yaşıyorum, ve sonra ben okuma ve SimpleXML ile RSS verilerini ayrıştırma duyuyorum. Sıralanan veri daha sonra bir mySQL veritabanına eklenir.
Ancak, http://dansays.co.uk/research/MNA/rss.php Ben karakterler doğru değil görüntüleme ile birkaç sorunlar yaşıyorum ilgili haber gibi.
Örnekler:
âGuitar Hero: Van Halenâ Trailer And Tracklist Available
NV 10/10/09 – Salt Lake City, UT 10/11/09 – Denver, CO 10/13/09 –
Ben veritabanına koymadan önce veri htmlentitiesi ve htmlspecialchars kullanarak denedi, ama çözmek sorunu yardım görünmüyor.
Nasıl muhtemelen ben yaşıyorum bu sorunu çözmek olabilir?
Tavsiyelerin için teşekkürler.
Updated
Ben Greg önerilen ne denedim ve sorun hala burada ...
İşte PDO'de SET İSİMLERİ yapmak için kullanılan kod:
$dbh = new PDO($dbstring, $username, $password);
$dbh->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$dbh->query('SET NAMES "utf8"');
Ben o sıralanır ve veritabanına eklenmeden önce SimpleXML verilerle echo'ing biraz yaptım, ve ben şimdi cURL ile ilgili bir şey olduğuna inanıyorum ...
İşte cURL için ne var:
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 0);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_ENCODING, 'UTF-8');
$data = curl_exec($ch);
curl_close($ch);
$doc = new SimpleXmlElement($data, LIBXML_NOCDATA);
Issue Resolved
Ben "UTF-8" Bu sorunu çözmek için için RSS / HTML sayfasındaki içeriğin charset ayarlamak zorunda. Ben karakter sorunları ham veri hala orada olduğu gibi bu gerçek bir düzeltme değil sanırım. PHP6 bunun için uygun destek bekliyorum!