döngü içersinde sıfırlama yapmamışsınız.
$Isimleri[]=$cikti[1];
yerine
$Isimleri = array();
$Isimleri[]=$cikti[1];
yazdığın kodda performans açısından ciddi sorun var. foreach döngüsü içinde for döngüsü ve bu döngünün için bir mysql sorgusu. tavsiyem tek bir mysql sorgusu ile halledin.
malesef bunu tek tek yaptırmam gerekiyor pm attım kendiniz de kontrol edebilirsiniz mantıgı bir link kategorisine gidiyor curl ile o kategorideki linkleri sıralıyor ve sıraladıklarından veritabanında olmayanları ekliyor. pm ile calısır halini gönderdim ama sorunlu calısan hali.
$linkt = array();
preg_match_all('~regex kuralim~is', $bir, $veriBir);
foreach($veriBir[1] as $linki)
{
$linkt[]=$linki;
}
for($f = 0; $f < 2; $f++){
$dizi_var=mysql_num_rows(mysql_query("SELECT video_id FROM videos WHERE sef_uri='".$linki[$f]."'"));
if($dizi_var<=0){
preg_match('~regex_kuralim~is',$link[$f],$cikti);
$Isimleri[]=$cikti[1];
for($im = 0; $im <count($Isimleri); $im++)
{
$Verisi = mysql_real_escape_string($Isimleri[$im]);
var_dump($Verisi);
}
}
}Yukarıda ki gibi dizilerle çalışırken işiniz bittiğinde diziyi unset etmeniz gerekir aksihalde söylediğiniz gibi tüm değerleri biriktirmiş olursunuz.
for($im = 0; $im <count($Isimleri); $im++)
{
$Verisi = mysql_real_escape_string($Isimleri[$im]);
var_dump($Verisi);
unset($Isimleri); // döngüde işi biten diziyi silerseniz sorun kalmaz.
}
bu sekilde sıfırlama yaptıgımda video partlarının sadece ilklerini alıp veriyor pm attım kontrol edebilir misiniz?