Php Foreach Sorunu
-
<?php header('Content-Type: text/html; charset=utf-8'); ?>
<?php$ara = 'Ana';
$sayfa = 'http://www.tahribat.com';
$ic = file_get_contents($sayfa);
$konum = strpos($ic, $ara) ;
if ($konum!==false){
//echo 'aradığınız bilgi şurada mevcuttur: '.$sayfa.'<br>' ;
foreach($ic as $hop){
echo substr($hop,$konum,150);
}
}
?>--------------
Ayn en bu şekilde yapuyorum.Burda mantıken tahribat.com/index.asp deki bütün anaları bastırmasını istiyorum fakat şöyle bir problem var olmuyor.Sayfaya birşey bastırılmıyor.
Foreach i kaldırsam
"Ana tablo entry noktası--> "
diyor fakat başkalarıda var.Onlarıda bastırmak istiyorum olmadı.Nasıl yapabilirim.
-
if($konum != false)
veya
if($konum == true) seklinde dene.
Not: Analari bu ise karistirma ;-)
-
sniperscope bunu yazdı:
-----------------------------if($konum != false)
veya
if($konum == true) seklinde dene.
Not: Analari bu ise karistirma ;-)
-----------------------------ahaha :D
hoca != false ta bi problem yok :-/ zaten işliyor.Strpos ta öyle yapılıyor o yüzden öyle yaptım.Problem foreach
-
$ic degiskeni dizi degiskeni olmadigi halde foreach dongusu icinde dizi degiskeni olarak islem yapmak istediginden kaynaklaniyor.
-
sniperscope bunu yazdı:
-----------------------------
$ic degiskeni dizi degiskeni olmadigi halde foreach dongusu icinde dizi degiskeni olarak islem yapmak istediginden kaynaklaniyor.
-----------------------------nasıl yapıcaz hoca ? ilk bulduğu Ana yı değil bütün hepsini ekrana bastırmak istiyorum
edit:
$sym1 = "|";
$sym2 = "@";$al = file_get_contents($sayfa);
$al = strip_tags($al);
$al = str_replace(" ", $sym1, $al);
$al = preg_replace("(\|{2})", $sym2, $al);
$al = explode("@", $al);
foreach($al as $n)böyle birşey buldum adam çekmiş.Fakat ne yapmak istediğini anlamadım.
ilk olarak sayfayı çekmiş sonra taglardan arındırmış.Boşlukları | olarak almış.Daha sonra reg_replace de ne yapmış ? ordan sonra @ harfini ayırmış.Sonra döngüye sokmuş.
(\|{2}) ne demek oluyor ?
-
<?php
$sayfa = 'http://www.tahribat.com';
$sym1 = "|";
$sym2 = "@";
$ara = 'i';
$al = file_get_contents($sayfa);
$al = strip_tags($al);
$al = str_replace(" ", $sym1, $al);
$al = explode("|", $al);
foreach($al as $n){
$konum = strpos($n, $ara);
if(strlen($konum) == strlen($ara)){
echo substr($n,$konum,150)."<br>";
}
}
?>Bak bakalim isine yarayacakmi.
Not: (\|{2}) <--- Duzenli ifade
-
hoca düzenli ifade de ne demek istiyor ???
Senin gönderdğin kod kafasına göre basıyor :-/
---
hoca benim
if ($konum!==false){
$ic = strip_tags($ic);
echo substr($ic,$konum,150);
}burada basıyor problem yok bunu while, foreach veya başka birşey ile döndürüp sayfa sonuna kadar aktarmam lazım.Onu çözersem hiç uğraşmaya gerek kalmazda..
burda sorun ilk Ana yı bulduğunda duruyor.Ondan sonrakilerini aramalı.
---edit
Hocam şimdi biz nasıl görrüyorsak yani sayfanın içeriği değilde görüneni gibi almak mümkün mü ? yani şu html kodlarıdır şunlar bunlar değil.
http://74.125.77.132/search?q=cache:Azmd4TJBO1EJ:www.tahribat.com/+tahribat&hl=en&client=firefox-a&strip=1
şöyle sadece yazı gibi.
