Merhaba arkadaşlar. Eğer php’de bir web sitesinin kaynağından veri çekmek istersek preg_match ve preg_match_all fonksiyonlarını kullanabiliriz. Preg_match fonksiyonu bulduğu ilk veriyi, preg_match_all ise bulduğu tüm verileri verir.
Örnek olarak:
Html sayfamızın(örnek http://websiteaddress.com/test.html) kaynak kodu:
<table style="width:100%"> <caption>Monthly savings</caption> <tr> <th>Month</th> <th>Savings</th> </tr> <tr> <td>January</td> <td>$100</td> </tr> <tr> <td>February</td> <td>$50</td> </tr> </table>
Veri çektireceğimiz sayfa(preg_match ile):
$site=file_get_contents('http://websiteaddress.com/test.html'); preg_match('@<td>(.*?)</td>@si',$site,$myString); var_dump($myString);
Çıktı:
array(2) { [0]=> string(16) "January" [1]=> string(7) "January" }
Veri çektireceğimiz sayfa(preg_match_all ile):
$site=file_get_contents('http://websiteaddress.com/test.html'); preg_match_all('@<td>(.*?)</td>@si',$site,$myString); var_dump($myString);
Çıktı:
array(2) { [0]=> array(4) { [0]=> string(16) "January" [1]=> string(13) "$100" [2]=> string(17) "February" [3]=> string(12) "$50" } [1]=> array(4) { [0]=> string(7) "January" [1]=> string(4) "$100" [2]=> string(8) "February" [3]=> string(3) "$50" } }
Çok iyi paylaşımlarda bulunuyorsunuz teşekkürler