Hiç mantığa gerek yok sadece biraz mantık yürütmek lazım bilgi seviyeni bilmediğimden biraz acemi gibi davranıcam bütün kodları açıklayarak aklındaki soru işaretlerini kaldırmaya çalışıcam.
<?php $site = file_get_contents("http://futbol.superstadyum.net/"); // Siteye Bağlanır $sozcuk = "#<div class=\"div_kanallar\">\s*<a href='(.*?)' target='_blank'>(.*?)</a>\s*</div>#si"; $bsozcuk = "#<div class=\"div_baslik\">\s*<div class=\"div_bayrak\"><img src=\"(.*?)\" style=\"vertical-align: middle;padding-right:2px;\" /></div><b>(.*?)</b></div>#"; preg_match_all($sozcuk,$site,$cikti); // Sözcük kriterine uygun olarak siteyi tarar $cikti olarak verir preg_match_all($bsozcuk,$site,$cikti2); // BSözcük kriterine uygun olarak siteyi tarar $cikti olarak verir $sayi = count($cikti); // Çıktı Sayısını Sayar for($s=0; $s<$sayi; $s++){ // Burası Çıktı sayısı kadar döngü oluşturur $link = $cikti[1][$s]; $kanal = $cikti[2][$s]; $baslik = $cikti2[2][$s]; ?> <a data-test="test" rel="nofollow" style="word-wrap: break-word; text-decoration: underline;" target="_blank" onclick="return dhExternalLinkRedirect(this)" href="/ExternalLinkRedirect?module=pgdcode&messageId=71462431&url=<?=$link;?>" data-href="<?=$link;?>"><?=$baslik;?><?=$kanal;?></a><br/> <!-- Yazdırır -> <?php } ?>
Burada bilmen gerekenler \s* arada boşluk veya herhangi bir karakter varsa direk geçer (.*?) seçme işini yapar sonundaki #si preg_match_all ifadesidir. $cikti[arraynumarası][Sayı] şeklinde çalışır ilk <a href='(.*?)' olduğu için $link = $cikti[1][$s]; dediğimizde her döngüde kendine ait linki çekicektir. kendi localhostumda denedim eğer yanlış anlamamışsam sorunsuz çalışıyor Edit : fonksiyon kullanma hiç gerek yok file_get_contents("http://futbol.superstadyum.net/"); aynı görevi görür
Hiç mantığa gerek yok sadece biraz mantık yürütmek lazım bilgi seviyeni bilmediğimden biraz acemi gibi davranıcam bütün kodları açıklayarak aklındaki soru işaretlerini kaldırmaya çalışıcam.
<?php $site = file_get_contents("http://futbol.superstadyum.net/"); // Siteye Bağlanır $sozcuk = "#<div class=\"div_kanallar\">\s*<a href='(.*?)' target='_blank'>(.*?)</a>\s*</div>#si"; $bsozcuk = "#<div class=\"div_baslik\">\s*<div class=\"div_bayrak\"><img src=\"(.*?)\" style=\"vertical-align: middle;padding-right:2px;\" /></div><b>(.*?)</b></div>#"; preg_match_all($sozcuk,$site,$cikti); // Sözcük kriterine uygun olarak siteyi tarar $cikti olarak verir preg_match_all($bsozcuk,$site,$cikti2); // BSözcük kriterine uygun olarak siteyi tarar $cikti olarak verir $sayi = count($cikti); // Çıktı Sayısını Sayar for($s=0; $s<$sayi; $s++){ // Burası Çıktı sayısı kadar döngü oluşturur $link = $cikti[1][$s]; $kanal = $cikti[2][$s]; $baslik = $cikti2[2][$s]; ?> <a data-test="test" rel="nofollow" style="word-wrap: break-word; text-decoration: underline;" target="_blank" onclick="return dhExternalLinkRedirect(this)" href="/ExternalLinkRedirect?module=pgdcode&messageId=73564229&url=<?=$link;?>" data-href="<?=$link;?>"><?=$baslik;?><?=$kanal;?></a><br/> <!-- Yazdırır -> <?php } ?>
Burada bilmen gerekenler \s* arada boşluk veya herhangi bir karakter varsa direk geçer (.*?) seçme işini yapar sonundaki #si preg_match_all ifadesidir. $cikti[arraynumarası][Sayı] şeklinde çalışır ilk <a href='(.*?)' olduğu için $link = $cikti[1][$s]; dediğimizde her döngüde kendine ait linki çekicektir. kendi localhostumda denedim eğer yanlış anlamamışsam sorunsuz çalışıyor Edit : fonksiyon kullanma hiç gerek yok file_get_contents("http://futbol.superstadyum.net/"); aynı görevi görür
bu sitede kaynak kodunda
<div class="wrapper">
</div>
arasındaki kodlardan yayın linklerini almam lazım ve bu yayın linkleri
gibi mesala, burdaki canlı-izle ile biten linkleri alarak bir değişkene atamam lazım siz sadece almayı öğretseniz gerisini ben halladebilirim sanırım
kodlarım
[size=4]bir türlü olmuyor / ve \ işaretleri ile birşeyler yapılıyor sanırım bu / \ işaretlerin mantığınıda bilmiyorum