Arkadaşlar php dosyasının kaynagını file_get_contents le cekiyorum. bu kaynak dosya içinden preg_match_all ile sadece array olanları toplamak istiyorum ne yapmam lazım ?
$degisken['array']
$degisken['array']['array']
böyle olanları
teşekkürler
array bulmak için regular expression ?
5
●490
- 27-08-2009, 03:34:40bunu bilmenin kesin bir yolu yok. dizi değişkenleride normal değişkenler gibi yazılmış olabilir. bir de file_get_contents ile bir php dosyasını çekip işlemeye çalışıyorsan bana yaptığın şey ne olursa olsun mantığı yanlış olabilir gibi geldi. onuda gözden geçir. sadece tecrübelerin verdiği bir his
- 27-08-2009, 03:57:33Kimlik doğrulama veya yönetimden onay bekliyor.Bi dk. yav. file_get_contents fonksiyonu dosya içeriğini HTML olarak çekmiyor mu? Yoksa PHP olarak mı? :Pzee adlı üyeden alıntı: mesajı görüntüle
- 27-08-2009, 04:38:50Ne işinize yarayacak çözemedim ama
preg_match_all('~\$([a-zA-Z0-9]+)\[\'([a-zA-Z0-9]+)\'\]\[\'([a-zA-Z0-9]+)\'\]~is',$metin,$buldum); $ikili=$buldum[0]; $metin=str_replace($ikili,'',$metin); preg_match_all('~\$([a-zA-Z0-9]+)\[\'([a-zA-Z0-9]+)\'\]~is',$metin,$buldum); $tekli=$buldum[0]; echo 'Bulunan Diziler: <br /><br />'.implode('<br />',$tekli).'<br /> <br />'.implode('<br />',$ikili);buyrun $metin değişkeninden dediğiniz şekildeki dizi gösterimlerini çekiyo.
Not: file_get_contents php kaynağını değil, php yansısı olan html kaynağını çeker. Yani echo gibi fonksiyonlar görünmez - 27-08-2009, 04:41:03Üyeliği durduruldumetin olarak kendi sayfanda değişkeni olarak taşıyabilirsin
bu iş için en pratik yöntem json yada serialize
kod ureten dosya
veri okuyan dosyaAlıntı
Alıntı - 21-01-2010, 12:29:34Üyeliği durdurulduBiraz toleranslı regex hazırladım, regexin yakalayabilecekleri;
$degisken['array'] = 'veri'; $degisken['array'] = "veri"; $degisken["array"] = "veri"; $degisken["array"] = 'veri'; $degisken['array'] = ''; $degisken['array'] = array(1,2,3...); $degisken['array'] = 123; $degisken['array'] = "veri"; $degisken['array']="veri"; $degisken['array']="ver asdasd asdi";
<?php $data = ' $x = 3; // bişeyler bişeyler $f = 5; if ($f < 3) pack("C*", 110); $degisken[\'array\'] = \'deneme\'; $degisken[\'array\'] = \'deneme2\'; $degisken[\'array\'][\'array\'] = \'test test\'; // bişeyler bişeyler $corba = "corba"; for ($i = 0;$i < 5; $i++) { $f += 1; } '; preg_match_all('~\$[a-zA-Z0-9_]+\[[\'|"]*(.+?)[\'|"]*\]+[[:space:]]*=[[:space:]]*[\'|"]?(.+?)[\'|"]?;~sim', $data, $cikti); echo join('<br />', $cikti[0]); ?>çıktı;
$degisken['array'] = 'deneme'; $degisken['array'] = 'deneme2'; $degisken['array']['array'] = 'test test';