Hocam sorun unsetle alakali degil. 

simple_html_dom.php 690 satirda
patliyor. tum kodu debug edemedim zamanim yok ancak file_get_html
fonksiyonu icinde create ettiginiz class methodlari patlatiyor. orada
bosaltma islemleri yapmaniz gerekecek. 

On Wed, 15 Dec 2010 10:35:33
+0000 (GMT), Guychmyrat Amanmyradov  wrote:  

 unset($counter);

unset($currentLink);
 unset($html);
 unset($sonuc);

 echo $html;

ekran
çıktısı :

 PHP Notice: Undefined variable: html in
/var/www/webreader/zamaninsertdetail.php on line
63
---------------------------------------------------Using 106954752
bytes of ram.yazilanlink :
http://www.zamantm.com/tm/newsDetail_getNewsById.action?newsId=18 
 PHP
Notice: Undefined variable: html in
/var/www/webreader/zamaninsertdetail.php on line
63
---------------------------------------------------Using 115343360
bytes of ram.yazilanlink :
http://www.zamantm.com/tm/newsDetail_getNewsById.action?newsId=19 
 PHP
Notice: Undefined variable: html in
/var/www/webreader/zamaninsertdetail.php on line
63
---------------------------------------------------Using 123994112
bytes of ram.Segmentation fault

--- 15/12/10 ÇAR TARIHINDE NURI AKMAN
__ şöyle yazıyor:

Kimden: Nuri Akman 
Konu: [Linux-programlama] Re:
Yan: Re: PHP bellek kullanımı
Kime: "Özgür yazılımlarla çeşitli dillerde
yazılım geliştirme" 
Tarihi: 15 Aralık 2010 Çarşamba, 12:28

Merhaba,


Unset satırlarıdan sonra bu değişkenlerin değerlerini enrana yazdırıp
silinip silinmediğini kontrol etmeyi denediniz mi acaba?

 Ben, $html
adlı değişkenin değerinin silinemiyor olduğundan şüpheleniyorum.


Selamlar,
 Nuri Akman

 15.12.2010 12:20, Atıf CEYLAN yazmış:  

Hocam
okudugunuz icerik 100 kb olsa ve surekli append etseniz 200 mb eder.
eger kodun devami vs.. yoksa burada kesinlikle bir buglik durum var
diyebilirim. 

ozelden kodu ve linkleri gonderebilirseniz farkli version
phpler var elimde deneyebilirim. 

On Wed, 15 Dec 2010 10:03:16 +0000
(GMT), Guychmyrat Amanmyradov  wrote:  

 Merhaba. açıkçası ben de
anlamadım. unsetler neden yok etmiyor. Aslında ilk önce $sonuc = "";
şeklinde denedim ama olmadı. Sonra kesin olsun diye unset yaptım. Ama
bellek her while girişinde şişiyor ve kilitleniyor.

 Problem bir
şekilde o değerler bellekten silinememesi.

 $linkObj'de herhangi bişey
yok. Hadi olsa bile 250 defa çağırıldığında belleği doldurması imkansız.
Çünkü orada yağtığım işlem şunlar :

 public function
removeUndefinedChars($str)
 {
 $a = array('ò', 'ª', 'º', '--', '
 ',
'Ã-', 'Åž', 'ÅŸ', 'ö', 'ü', 'ý', 'ä', 'ň', 'ò', 'Ã�', 'ç', 'ç',
'Â', 'ž', 'âEUR', 'œ');
 $b = array('ň', 'Ş', 'ş', ' ', ' ', 'Ö', 'Ş',
'ş', 'ö', 'ü', 'ý', 'ä', 'ň', 'ň', 'Ý', 'ç', 'Ç', '', 'ž', '', '');


return str_replace($a, $b, $str);
 }

 public function
convertToDobuleDigit($number)
 {
 $doubledigitnumbers = array(

'1'=>'01',
 '2'=>'02',
 '3'=>'03',
 '4'=>'04',
 '5'=>'05',
 '6'=>'06',

'7'=>'07',
 '8'=>'08',
 '9'=>'09'
 );

 if(in_array($number,
$doubledigitnumbers))
 return $doubledigitnumbers[$number];
 else

return $number;
 }

 Ayrıca classın başında bir değişken de
tanımlamadım. Problem web sayfaları okuduğumda haliyle çok veri geliyor
ve o verileri bellekten atamaması. Şimdi başka bir yöntem ile
halledeceğim onu. Bir tabloya tüm linkleri yazıp tek tek çağırma
yöntemini kullanmayı düşünüyorum. Böyle bir probleme neden olan şeyi
anlayamadım.

 --- 15/12/10 ÇAR TARIHINDE ATIF CEYLAN _ _  şöyle
yazıyor:

 Kimden: Atıf CEYLAN 
 Konu: [Linux-programlama] Re: PHP
bellek kullanımı
 Kime: "Özgür yazılımlarla çeşitli dillerde yazılım
geliştirme" 
 Tarihi: 15 Aralık 2010 Çarşamba, 11:49

_ _ 

_Merhaba,_ _
_ 

_hocam baska bir sorun vardir. bir web sayfasinin bellegi
tasirabilecek kadar contenti olmasi cok anlamsiz._ _ _ 

_unset
degiskeni yok eder. Yok ederken (bir bag yoksa) datayi da yok etmesi
gerekir. dilerseniz unset yapmayin ve en sondaki unsetleri silip yerine
degiskenleri $sonuc = ""; gibi set edin. halen sorun oluyorsa $linkObj
objenizi kontrol edin. recursive veya static islemler/degiskenler kalmis
olabilir/_ _ _ 

 _ _ 

_On Wed, 15 Dec 2010 08:37:06 +0000 (GMT),
Guychmyrat Amanmyradov wrote:_ _ _ _ _ 

 Merhabalar. 
 Aşağıdaki gibi
kodum var. Yaptığı işlem bir gazeteden sürekli olarak haberleri çekip
belli bir kısmını veritabanına yazmak. Ben değişkenleri while içinde
unset yapıp tekrar oluştursam da sanırım bellekten silmiyor bunu.
Haliyle bellek şişiyor. 

 Eğer 
 ini_set('memory_limit', '512M');


kullanırsam 512 dolduruyor ve program duruyor. Bellek doldu diye. Eğer
onu kullanmaz isem bilgisayar kullanılamaz hale geliyor, yani belleği
dolduruyor ve sonra tüm bilgisayar belleği bitince duruyor.

 Bunu nasıl
kontrol edebilirim acaba?

 Şimdiden teşekkürler.

 for($i = 1; $i
convertToDobuleDigit($i);

 $html = file_get_html($currentLink);

 if (
preg_match("/font class="detail-spot">/i", $html)) {


foreach($html->find('font[class=detail-spot]') as $e)
 {
 $sonuc .=
preg_replace("/(^[rn]*|[rn]+)[st]*[rn]+/", "n", $e->innertext);

 }


$time = date('y-m-d H:i:s', strtotime("now"));
 mysql_query("insert into
ztext(content, link, time) Values('" . $linkObj->removeUndefinedChars(
addslashes( $sonuc ) ). "', '".$currentLink."', '".$time."') ");

 echo
"yazilanlink : ".$currentLink." nt";

 }
 else
 {
 $lastlinkok = false;

echo "currentlink : ".$currentLink." nt";
 }

 unset($counter);

unset($currentLink);
 unset($html);
 unset($sonuc);

 echo
"---------------------------------------------------";
 echo "Using ",
memory_get_peak_usage(1), " bytes of ram.";

 }

 _ _ 
-- 

/**
 *
@AUTHOR Atıf CEYLAN
 * Software Developer & System Admin
 *
http://www.atifceylan.com [2]
 */
 _ _ _ _  
 -----Satır İçi Eki
Var-----

_______________________________________________

Linux-programlama mailing
list
[email protected]
https://liste.linux.org.tr/mailman/listinfo/linux-programlama
[3]
 Liste kurallari: http://liste.linux.org.tr/kurallar.php [4] _ _ _
_ 

-- 

/**
 * @AUTHOR Atıf CEYLAN
 * Software Developer & System
Admin
 * http://www.atifceylan.com [5]

*/

_______________________________________________
Linux-programlama
mailing
list
[email protected]
https://liste.linux.org.tr/mailman/listinfo/linux-programlama
[6]
Liste kurallari: http://liste.linux.org.tr/kurallar.php
[7]

-----Satır İçi Eki
Var-----

_______________________________________________
Linux-programlama
mailing
list
[email protected]
https://liste.linux.org.tr/mailman/listinfo/linux-programlama
[8]
Liste kurallari: http://liste.linux.org.tr/kurallar.php [9]   

--


/**
 * @AUTHOR Atıf CEYLAN
 * Software Developer & System Admin
 *
http://www.atifceylan.com
 */
 

Links:
------
[1]
http://www.abc.com/?newsId=
[2] http://www.atifceylan.com
[3]
https://liste.linux.org.tr/mailman/listinfo/linux-programlama
[4]
http://liste.linux.org.tr/kurallar.php
[5] http://www.atifceylan.com
[6]
https://liste.linux.org.tr/mailman/listinfo/linux-programlama
[7]
http://liste.linux.org.tr/kurallar.php
[8]
https://liste.linux.org.tr/mailman/listinfo/linux-programlama
[9]
http://liste.linux.org.tr/kurallar.php
_______________________________________________
Linux-programlama mailing list
[email protected]
https://liste.linux.org.tr/mailman/listinfo/linux-programlama
Liste kurallari: http://liste.linux.org.tr/kurallar.php

Cevap