PHP ile Excel dosyasından Veri Okuma

Bu makalemizde Excel dosyasından PHP Web programlama dili ile nasıl veri okunacağını inceleyeceğiz. Aslında birçok teknik var ama bu teknikleri deneyince olumlu sonuç vermediklerini, Türkçe karakter sorınlarının olduğunu gördüm.
 
 
Genelde kullanılan teknik Excel dosyalarını CSV dosyasına çevirdikten sonra her bir alan arasında yer alan  noktalı virgüllere (;) dayanarak ayrıştırmak ve çekmek üzerine idi. Benim de eski projelerde kullandığım teknik bu idi, fakat aşağıdaki kodlar ile Excel dosyasını CSV dosyasına çevirme gibi hiçbir çevrim yapmadan okuyabilirsiniz. Tabi bu okuduğunuz veriyi bir veritabanına da basit bir SQL INSERT komutu ile ekleyebilirsiniz. 

Aşağıdaki örnekte c:\wamp\www\ornek.xls dosyasını çağırıyorum. Ornek.XLS dosyasında 2 satır, 5 sütün var, aşağıdaki resimde örnek excel dosyasını görebilirsiniz. PHP ile her bir satırı okudukça $html değişkeninin içine aktarıyorum. Sonra da $html değişkenini ekrana basıyorum



<!DOCTYPE html>
<head>
<meta charset="utf-8" />
</head>
<body>
 
<?php
 
echo "Veri okunuyor...";
 
$dosya = new COM ( "Excel.Application", NULL, CP_UTF8 ) or die("Hata Oluştu");
$veri=$dosya->Workbooks->Open("C:\\wamp\\www\\ornek.xls");   
$sayfa=$veri->Worksheets(1);   
 
$satirSayisi=2;
$sutunSayisi=5;
 
$html="<table border='1'>";
 
for($i=1;$i<=$satirSayisi;$i++)   
{   
$html.="<tr>";
    for($x=1;$x<=$sutunSayisi;$x++)   
    {   
          $satir=$sayfa->Cells($i,$x);   
          $satir->activate;  
          $html.="<td>".$satir->value."</td>";
 
    }    
$html.="</tr>";
}
$html.="</table>";
echo $html;   
$dosya->Quit();   
echo "Veri okundu...";
?>
 
</body>
</html>



Umarım bu örnek, projelerinizde çok işinize yarayacaktır. Bu örneği daha da geliştirebilir, excel dosyasını kullanıcının seçmesini sağlayabilir, kaç satırın okunacağını bir textbox'tan alıp ona göre veri çekebilirsiniz.

Mutlu kodlamalar,
Oğuzhan TAŞ
Bookmark and Share