SimpleXML ile XML dosyasını array’e çevirin

8 Kasım 2008 | Kategori : Sınıf (Class) | 1 Yorum »

Bazı hostinglerin PHP5 desteği vermemesi nedeniyle API’lerin XML cevaplarını işlemekte sıkıntı yaşayabiliyoruz. Bu yüzden XML dosyalarını array’e çevirip kolayca işlem yapabilmek için bazı sınıflara ihtiyacımız bulunmakta. 

Taha Paksu tarafıından yazılmış SimpleXML for PHP4 sınıfı bu noktada çevirme işlemini kolay bir şekilde yapıp PHP4 kullanmak zorunda kalanlara büyük kolaylık sağlıyor.

Sınıfın dosyasına buradan ulaşabilirsiniz. (İndirmek için Phpclasses.org’a üye olmanız gerekiyor.)

Örnek kullanım aşağıda:


<?php

require_once "simplexml.class.php";

$file = "http://musicbrainz.org/ws/1/track/?query=metallica&amp;amp;amp;type=xml";
$sxml = new simplexml;
$data = $sxml->xml_load_file($file,'array');

print_r($data);

?>

Eğer fonksiyon olarak kullaanmak isterseniz;


<?php

if(!function_exists("simplexml_load_file")){ 

function simplexml_load_file($file){ 

  $sx = new simplexml; 

  return $sx->xml_load_file($file,'array'); 

} 

} 

?>

Not: Bu sınıf Taha Paksu’ya Nisan Ayı İnnovasyon ödülünü getirmiş.  Kendisini tebrik ediyoruz.

Etiketler: , , ,

Twitter API ile durum güncellemek

8 Kasım 2008 | Kategori : Kod Örnekleri | İlk yorumu siz yapın »

Twitter API kullanarak oluşturduğunuz profilin durumunu aşağıdaki gibi güncelleyebilirsiniz. Aşağıdaki örnek php ile yazılmış olup bağlantı için Curl kütüphanesi kullanılmıştır.


$username = 'Kullanıcı adı';
$password = 'Şifre';
$url = 'http://twitter.com/statuses/update.xml';
// Curl bağlantısı kuruyoruz.
$curl_handle = curl_init();
curl_setopt($curl_handle, CURLOPT_URL, "$url");
curl_setopt($curl_handle, CURLOPT_CONNECTTIMEOUT, 2);
curl_setopt($curl_handle, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl_handle, CURLOPT_POST, 1);
curl_setopt($curl_handle, CURLOPT_POSTFIELDS, "status=$message");
curl_setopt($curl_handle, CURLOPT_USERPWD, "$username:$password");
$buffer = curl_exec($curl_handle);
curl_close($curl_handle);
// başarıllı olup olmadığını test ediyoruz
if (empty($buffer)) 
{
echo 'message';
} 
else 
{
echo 'success';
}
Etiketler: ,