dhmm bunu yazdı Hocam selamlar. Her defasinda new ile instance olusturuyorsunuz. Her instance olusturdugunuzda public static $i = 1 satiri calisir diye biliyorum. Boylece size hep 1 degeri dondurecektir. Ayrica bildigim kadariyla PHP de static oalrak tanimladiginiz class propertyleri onlari sonraki requestte sabit tutmaz. Yani su asagidaki kodu her refresh ettiginizde ayni sonucu alirsiniz 1 ve 2 function X x ; x ; rnek oluşturmakla static initializer tekrar çağrılmaz. Yanlış. Fakat Php her bir php dosyasını bir application olarak ele aldığından sınıfın bulunduğu php dosyası her include edildiğinde tekrar ilklenir. Her requestte de bu şekilde olmasının nedeni bu. Ayrıca @ozgunlu tasarım yanlış. Php instance'ı sonlandığı zaman o i değişkeninden eser kalmayacak. Bu işi veritabanından halletmeni tavsiye ederim ya da o fonksiyona i'yi parametre olarak gnder. javadan farkı ne ki, değişkenden eser kalmıyor? static variable' lar ram de class' lardan nce yaratılıp uygulama sonlanana kadar tutulmaz mı? Hello, i am nothing. I come from Neverland.

<?php error_reporting ; require ; class CustomUploadHandler extends UploadHandler { public static $i = 1; protected function trim_file_name } $upload_handler = new CustomUploadHandler ; ?> Farklı bir yerden fileupload yaparken çağırıyorum ve her seferinde çağrıldığında $i değer 1 olarak kalıyor. Her o metoda girdiğinde $i ' nin 1 artması gerekiyor, nerede yanlış yapıyorum acaba? ozgunlu tarafından 15/Nis/16 10:41 tarihinde düzenlenmiştir Hello, i am nothing. I come from Neverland.

Geliştirilebilirliği sağlamak bence en nemlisi, o yüzden bu kadar yoruyoruz. Yoksa yaz gitsin, her türlü çalışır :) Katıl mıyorum:) O tüm x deseni ile yazılmış tüm kodlar, aradaki y sınıfının kurala uymaması ile çp olabilir ya da f kişisinin yazdığı kodlar dkümantasyonsuzsa projeyi baştan yazman çok daha kolay olabilir gibi... Aşağı yukarı mantık aşağıdaki şekilde olursa problem çıkmaz: 1. Sadece kendi işini yapacak fonksiyonları yaz. rneğin bir çıktı dosyası oluşturacak fonksiyonun grevi nce dosyanın varlığını kontrol etmek, varsa silmek ve yeniden oluşturmak olmasın. Doğrudan oluştursun. Oradaki dosyanın varlığını denetleme grevi başka bir fonksiyonun. 2. Fonksiyonları tek başlarına bir uygulama gibi düşün. Yapacağı işle ilgili parametreleri kendisi oluşturmasın, dışarıdan alsın. rneğin A fonksiyonu z dosyasına yazmakla grevli diyelim. Yazacağı şeyleri dışarıdan almalı, kendisi oturup dosyanın encoding'ini belirlememeli. 3. Gizleyebildiğin her şeyi gizle. OOP destekli bir dil kullanıyorsan sınıflarla, yoksa yapıların içine gizle ki yanlışlıkla bozmayasın, haddini aşıp saçma bir yerde kullanmayasın. 4. Arayüzler oluştur. Bir işi arayüzlerle tanımla ve bu arayüzün dışındaki her şeye yokmuş gibi davran. 5. Bir şeyi değiştirmek istemiyorsan const yap, elleme. Yapamıyorsan değerini kopyalayarak kullan. 6. Sadece bir işi yapmakla grevli sınıflar oluştur. Günlükleme sınıfı, XML to SQL sınıfı gibi. Günlükleme sınıfını sadece bir şeyin günlüklenmesi gerektiğinde çağırırsın. Günlük dosyasının konumunu verirsin, oluşturur. Günlüğe yazılacak şeyleri verirsin, yazar. Bu kadar. Günlükleme sınıfı tutup o günlüklerden istatistik çıkarmasın . Günlükten istatistik çıkarmak başka bir sınıfın grevi olmalı. 7. Benzer işi yapan sınıfları da toplayıp modül oluştur. Sabit parametreler modül ile birlikte tanımlansın. 8. Her fonksiyonun düzgün çalıştığından emin ol. Birim testleri bunun için var. 9. Dkümantasyon yaz. Hiyerarşiyi kağıda çiz. Neyin ne yapacağı, hangi parametreler ışığında ne gibi sonuçlar üreteceğini not düş. 10. Proje ynetim sistemi kullan. Versiyonlama yap. 11. Bana dua et:) Olaylara karışmayın!

YeniHarman bunu yazdı dhmm bunu yazdı Hocam selamlar. Her defasinda new ile instance olusturuyorsunuz. Her instance olusturdugunuzda public static $i = 1 satiri calisir diye biliyorum. Boylece size hep 1 degeri dondurecektir. Ayrica bildigim kadariyla PHP de static oalrak tanimladiginiz class propertyleri onlari sonraki requestte sabit tutmaz. Yani su asagidaki kodu her refresh ettiginizde ayni sonucu alirsiniz 1 ve 2 function X x ; x ; rnek oluşturmakla static initializer tekrar çağrılmaz. Yanlış. Fakat Php her bir php dosyasını bir application olarak ele aldığından sınıfın bulunduğu php dosyası her include edildiğinde tekrar ilklenir. Her requestte de bu şekilde olmasının nedeni bu. Ayrıca @ozgunlu tasarım yanlış. Php instance'ı sonlandığı zaman o i değişkeninden eser kalmayacak. Bu işi veritabanından halletmeni tavsiye ederim ya da o fonksiyona i'yi parametre olarak gnder. javadan farkı ne ki, değişkenden eser kalmıyor? static variable' lar ram de class' lardan nce yaratılıp uygulama sonlanana kadar tutulmaz mı? Hocam @YeniHarman hocanin dedigi gibi Javadan farki "Php her bir php dosyasını bir application olarak ele aldığından sınıfın bulunduğu php dosyası her include edildiğinde tekrar ilklenir" Tahminim Java'da degiskenin bulundugu class destruct/dispose olmadan static deger sabit kalir. Ozgurluk aslinda her istedigini yapabilmek degildir, istemedigini yapmamaktir. // Verdigin degeri gormeyince, gordugun degeri ver!!! // Hayatin herkes icin bir bavulu vardir!!! // Dusmek gerekir bazen hayatta; kalkmayi ogrenebilmek icin

YeniHarman bunu yazdı Şimdi şyle oluyor: ncelikle http, durumsuz bir protokol. Yani her isteğe bir cevap veriliyor ve sonra kayboluyor . E o zaman kullanıcının yaptığı her request'e cevap verildikten sonra her şey baştan başlıyor. Php, yorumlanan bir dil. Her php dosyası çağrıldığında web sunucu yazılımı mime tipine gre çeşitli şekillerde php yorumlayıcısını dürtüyor. Php yorumlayıcısı, dosyayı baştan yorumlayıp çıktı haline getirip web sunucusuna bunu cevap olarak gnder diyor. Her php dosyası için tekrar bir yorumlama süreci geçtiğine gre tüm nesneler baştan ilkleniyor sonucunu çıkarıyoruz. Kısaca static x, tek seferlik. Bu bağlamda statik değişken kullanmanın bir mantığı kalmıyor. Çünkü ne aynı oturumda istekler arasında ne de ayrı oturumlarda C# gibi Java gibi davranış bekleyemiyoruz. Session'da saklamanın mantığı yok çünkü session düştükten sonra yine başa dndük. Hadi, bir de her kullanıcıyla paylaşılsın dersek ne olacak? global variables uçalı çok oldu. Mecburen kalıcı bir yere depolayalım ki hem session uçtuğunda üzülmeyelim hem de gerektiği durumda diğer kullanıcılarla da paylaşalım . hocam OOP' nin ne faydası oluyor o zaman bu PHP' ye. Tamam bir sürü bişeye düzene sokuyoruz da 100% fit de olmuyor bu olay. Yani bir java mantığıyla ilerleyemiyorum php de. Class' larım var tamam ama beni nelerden kurtarıyor tam da byle rahat değilim. Bana gre sadece maintanence ve readability' i bir derece artıyor. Procedural yaklaşınca da çok birşey kaybetmiyormuşum gibi geliyor . Yani biraz mükemmelliyetçi bir yapım, birşeyi 10 kere düşünüp 1 kere yazma taraftarıyım, en iyisini yakalamaya çalışıyorum ama konu php' ye gelince, her konusunda ayrı bir tartışma ile karşılaşıyorum. JSP dede benzer kod yazsan aynı tepkiyi verecektir. Sorun php değil yani. Yazdığın kod http için bu şekilde çalışması gerekiyor zaten. Byle bir ihtiyaç için en mantıklısı memcached gibi bir teknoloji ile static değeri tutmak. DrKill tarafından 16/Nis/16 02:46 tarihinde düzenlenmiştir Bu imzayı her grdüğünüzde 4gb kotanızın 0,00000358559191226959228515625 azalmaktadır. Bilerek ve istenerek bu imza yapılmıştır. Amaç kotanızı smürmektir

hocam OOP' nin ne faydası oluyor o zaman bu PHP' ye. Tamam bir sürü bişeye düzene sokuyoruz da 100% fit de olmuyor bu olay. Yani bir java mantığıyla ilerleyemiyorum php de. Class' larım var tamam ama beni nelerden kurtarıyor tam da byle rahat değilim. Bana gre sadece maintanence ve readability' i bir derece artıyor. Procedural yaklaşınca da çok birşey kaybetmiyormuşum gibi geliyor . Yani biraz mükemmelliyetçi bir yapım, birşeyi 10 kere düşünüp 1 kere yazma taraftarıyım, en iyisini yakalamaya çalışıyorum ama konu php' ye gelince, her konusunda ayrı bir tartışma ile karşılaşıyorum. Bahsettiğimiz sıkıntı doğruda php'nin oop yeteneklerinden kaynaklanmıyor. Tamam, php $'sidir, ->'dir, getter setter olayıdır, arrayların pass by value olmasıdır gibi bir sürü rezilliği var ama değil işte:) İşte o mükemmeliyetçilik sıkıntılı bir durum. Bir işin kalitesi şyle anlaşılır: 1. İşini yapıyor mu? 2. İşini yaparken sıkıntı çıkarıyor mu? Bir yazılım oluşturulma amacını hatasız yerine getiriyorsa iyidir, getirmiyorsa değildir. Nasıl, neyle, ne zaman yazıldığı nemli değil. Gidip üç satır kodu illa sınıf içine kapsüllemenin, a->b->c->d...->n hiyerarşisi kullanmanın saçma olduğu açık. Deneyimle çzülebileceğine inanıyorum bu durumun. Daha iyi mimari tasarımı, daha iyi soyutlama gibi nemli şeyler sorunla karşılaşıp çzünce oluyor. Olaylara karışmayın!

ozgunlu bunu yazdı hocam OOP' nin ne faydası oluyor o zaman bu PHP' ye. Tamam bir sürü bişeye düzene sokuyoruz da 100% fit de olmuyor bu olay. Yani bir java mantığıyla ilerleyemiyorum php de. Class' larım var tamam ama beni nelerden kurtarıyor tam da byle rahat değilim. Bana gre sadece maintanence ve readability' i bir derece artıyor. Procedural yaklaşınca da çok birşey kaybetmiyormuşum gibi geliyor . Yani biraz mükemmelliyetçi bir yapım, birşeyi 10 kere düşünüp 1 kere yazma taraftarıyım, en iyisini yakalamaya çalışıyorum ama konu php' ye gelince, her konusunda ayrı bir tartışma ile karşılaşıyorum. Bahsettiğimiz sıkıntı doğruda php'nin oop yeteneklerinden kaynaklanmıyor. Tamam, php $'sidir, ->'dir, getter setter olayıdır, arrayların pass by value olmasıdır gibi bir sürü rezilliği var ama değil işte:) İşte o mükemmeliyetçilik sıkıntılı bir durum. Bir işin kalitesi şyle anlaşılır: 1. İşini yapıyor mu? 2. İşini yaparken sıkıntı çıkarıyor mu? Bir yazılım oluşturulma amacını hatasız yerine getiriyorsa iyidir, getirmiyorsa değildir. Nasıl, neyle, ne zaman yazıldığı nemli değil. Gidip üç satır kodu illa sınıf içine kapsüllemenin, a->b->c->d...->n hiyerarşisi kullanmanın saçma olduğu açık. Deneyimle çzülebileceğine inanıyorum bu durumun. Daha iyi mimari tasarımı, daha iyi soyutlama gibi nemli şeyler sorunla karşılaşıp çzünce oluyor. Geliştirilebilirliği sağlamak bence en nemlisi, o yüzden bu kadar yoruyoruz. Yoksa yaz gitsin, her türlü çalışır :) Hello, i am nothing. I come from Neverland.

Geliştirilebilirliği sağlamak bence en nemlisi, o yüzden bu kadar yoruyoruz. Yoksa yaz gitsin, her türlü çalışır :) Katıl mıyorum:) O tüm x deseni ile yazılmış tüm kodlar, aradaki y sınıfının kurala uymaması ile çp olabilir ya da f kişisinin yazdığı kodlar dkümantasyonsuzsa projeyi baştan yazman çok daha kolay olabilir gibi... Aşağı yukarı mantık aşağıdaki şekilde olursa problem çıkmaz: 1. Sadece kendi işini yapacak fonksiyonları yaz. rneğin bir çıktı dosyası oluşturacak fonksiyonun grevi nce dosyanın varlığını kontrol etmek, varsa silmek ve yeniden oluşturmak olmasın. Doğrudan oluştursun. Oradaki dosyanın varlığını denetleme grevi başka bir fonksiyonun. 2. Fonksiyonları tek başlarına bir uygulama gibi düşün. Yapacağı işle ilgili parametreleri kendisi oluşturmasın, dışarıdan alsın. rneğin A fonksiyonu z dosyasına yazmakla grevli diyelim. Yazacağı şeyleri dışarıdan almalı, kendisi oturup dosyanın encoding'ini belirlememeli. 3. Gizleyebildiğin her şeyi gizle. OOP destekli bir dil kullanıyorsan sınıflarla, yoksa yapıların içine gizle ki yanlışlıkla bozmayasın, haddini aşıp saçma bir yerde kullanmayasın. 4. Arayüzler oluştur. Bir işi arayüzlerle tanımla ve bu arayüzün dışındaki her şeye yokmuş gibi davran. 5. Bir şeyi değiştirmek istemiyorsan const yap, elleme. Yapamıyorsan değerini kopyalayarak kullan. 6. Sadece bir işi yapmakla grevli sınıflar oluştur. Günlükleme sınıfı, XML to SQL sınıfı gibi. Günlükleme sınıfını sadece bir şeyin günlüklenmesi gerektiğinde çağırırsın. Günlük dosyasının konumunu verirsin, oluşturur. Günlüğe yazılacak şeyleri verirsin, yazar. Bu kadar. Günlükleme sınıfı tutup o günlüklerden istatistik çıkarmasın . Günlükten istatistik çıkarmak başka bir sınıfın grevi olmalı. 7. Benzer işi yapan sınıfları da toplayıp modül oluştur. Sabit parametreler modül ile birlikte tanımlansın. 8. Her fonksiyonun düzgün çalıştığından emin ol. Birim testleri bunun için var. 9. Dkümantasyon yaz. Hiyerarşiyi kağıda çiz. Neyin ne yapacağı, hangi parametreler ışığında ne gibi sonuçlar üreteceğini not düş. 10. Proje ynetim sistemi kullan. Versiyonlama yap. 11. Bana dua et:) 9 ve 10' u yapmıyordum, diğerlerini yapıyordum. Ama konunun buralara gelmesine seviniyorum. Farkındalığım arttı iyice, kenara not olarak asayım bunu da. Teşekkür ederim hocam, 11. maddeyi yapıyordum bu arada. Sevgiler :)) Hello, i am nothing. I come from Neverland.

Şimdi şyle oluyor: ncelikle http, durumsuz bir protokol. Yani her isteğe bir cevap veriliyor ve sonra kayboluyor . E o zaman kullanıcının yaptığı her request'e cevap verildikten sonra her şey baştan başlıyor. Php, yorumlanan bir dil. Her php dosyası çağrıldığında web sunucu yazılımı mime tipine gre çeşitli şekillerde php yorumlayıcısını dürtüyor. Php yorumlayıcısı, dosyayı baştan yorumlayıp çıktı haline getirip web sunucusuna bunu cevap olarak gnder diyor. Her php dosyası için tekrar bir yorumlama süreci geçtiğine gre tüm nesneler baştan ilkleniyor sonucunu çıkarıyoruz. Kısaca static x, tek seferlik. Bu bağlamda statik değişken kullanmanın bir mantığı kalmıyor. Çünkü ne aynı oturumda istekler arasında ne de ayrı oturumlarda C# gibi Java gibi davranış bekleyemiyoruz. Session'da saklamanın mantığı yok çünkü session düştükten sonra yine başa dndük. Hadi, bir de her kullanıcıyla paylaşılsın dersek ne olacak? global variables uçalı çok oldu. Mecburen kalıcı bir yere depolayalım ki hem session uçtuğunda üzülmeyelim hem de gerektiği durumda diğer kullanıcılarla da paylaşalım . hocam OOP' nin ne faydası oluyor o zaman bu PHP' ye. Tamam bir sürü bişeye düzene sokuyoruz da 100% fit de olmuyor bu olay. Yani bir java mantığıyla ilerleyemiyorum php de. Class' larım var tamam ama beni nelerden kurtarıyor tam da byle rahat değilim. Bana gre sadece maintanence ve readability' i bir derece artıyor. Procedural yaklaşınca da çok birşey kaybetmiyormuşum gibi geliyor . Yani biraz mükemmelliyetçi bir yapım, birşeyi 10 kere düşünüp 1 kere yazma taraftarıyım, en iyisini yakalamaya çalışıyorum ama konu php' ye gelince, her konusunda ayrı bir tartışma ile karşılaşıyorum. Hello, i am nothing. I come from Neverland.

Javada byle bişey olmuyordu, anlamadım ki ben yav. Galiba olay şu dediğin : PHP de static oalrak tanimladiginiz class propertyleri onlari sonraki requestte sabit tutmaz. Başka yerden post ederek çzdüm sorunu, SESSION gelmemişti aklıma. İyi oldu, teşekkür ederim. Yaptığım çzüm byle benim : <?php error_reporting ; require ; class CustomUploadHandler extends UploadHandler { public static $case_name, $objective, $layer; public static function init protected function trim_file_name } $case_name = $_POST ; $objective = $_POST ; $layer = $_POST ; CustomUploadHandler::init ; $upload_handler = new CustomUploadHandler ; ?> Hello, i am nothing. I come from Neverland.

Hocam selamlar. Her defasinda new ile instance olusturuyorsunuz. Her instance olusturdugunuzda public static $i = 1 satiri calisir diye biliyorum. Boylece size hep 1 degeri dondurecektir. Ayrica bildigim kadariyla PHP de static oalrak tanimladiginiz class propertyleri onlari sonraki requestte sabit tutmaz. Yani su asagidaki kodu her refresh ettiginizde ayni sonucu alirsiniz 1 ve 2 function X x ; x ; rnek oluşturmakla static initializer tekrar çağrılmaz. Yanlış. Fakat Php her bir php dosyasını bir application olarak ele aldığından sınıfın bulunduğu php dosyası her include edildiğinde tekrar ilklenir. Her requestte de bu şekilde olmasının nedeni bu. Ayrıca @ozgunlu tasarım yanlış. Php instance'ı sonlandığı zaman o i değişkeninden eser kalmayacak. Bu işi veritabanından halletmeni tavsiye ederim ya da o fonksiyona i'yi parametre olarak gnder. Olaylara karışmayın!

dhmm bunu yazdı Hocam selamlar. Her defasinda new ile instance olusturuyorsunuz. Her instance olusturdugunuzda public static $i = 1 satiri calisir diye biliyorum. Boylece size hep 1 degeri dondurecektir. Ayrica bildigim kadariyla PHP de static oalrak tanimladiginiz class propertyleri onlari sonraki requestte sabit tutmaz. Yani su asagidaki kodu her refresh ettiginizde ayni sonucu alirsiniz 1 ve 2 function X x ; x ; rnek oluşturmakla static initializer tekrar çağrılmaz. Yanlış. Fakat Php her bir php dosyasını bir application olarak ele aldığından sınıfın bulunduğu php dosyası her include edildiğinde tekrar ilklenir. Her requestte de bu şekilde olmasının nedeni bu. Ayrıca @ozgunlu tasarım yanlış. Php instance'ı sonlandığı zaman o i değişkeninden eser kalmayacak. Bu işi veritabanından halletmeni tavsiye ederim ya da o fonksiyona i'yi parametre olarak gnder. Hocam ornek olusturmuyorum. Verdigim ornek bir fonksiyon sadece. Fonksiyonu x x ile iki kez cagiriyorum static degerin degismedigini gostermek icin. Sonuca php dosyasinin calistirilmasi bitene kdr o fonksiyonun icinde static degeri sifirlanmaz. Yanlissam duzeltin lutfen. Ozgurluk aslinda her istedigini yapabilmek degildir, istemedigini yapmamaktir. // Verdigin degeri gormeyince, gordugun degeri ver!!! // Hayatin herkes icin bir bavulu vardir!!! // Dusmek gerekir bazen hayatta; kalkmayi ogrenebilmek icin

Sınıf statiklerini çok severim. Ve espirisi üretilen tüm objelerin aynı değeri işleyebilmesine dayanıyor ve her istekte yeniden oluşturuluyorlar. Yoksa server'ı çalıştırdım statik değer verdim bu server kapanasıya kadar bellekte kalacak diye birşey yok. Eğer birden fazla isteğin o işleyeceği değer sz konusu ise onu bir şekilde diske yazmamız gerekiyor. Ya da bizim istediğimiz bilgileri ramde tutacak bir program edinmemiz gerekiyor. Mesela statikler ile ilgili bir veritabanı sınıfını yazayım: class VT { public static $baglanti = null; public $son_sorgu = null; public $son_sonuc = null; public static baglan public function sorgu { if $this->son_sonuc = self::$baglanti->prepare(... } } Bu sınıfı incelediğimizde, "$vt1 = new VT ; $vt2 = new VT ; $vt3 = new VT ;" şeklinde üç ayrı obje olsa bile hepsi aynı bağlantıyı kullanacaklar. Bylece tek istekte birden fazla bağlantı oluşturulmasını engelleyeceğiz. Varsayılan bağlantı tipinde bağlanacaklar. Sadece bi imza..

yorumları okumadım ama sylediğini yapabilmen için sınıfı da statik yapman lazım. her defasında new instance oluşucak yaptığın şekilde black implies white, self implies other, life implies death.

Hocam selamlar. Her defasinda new ile instance olusturuyorsunuz. Her instance olusturdugunuzda public static $i = 1 satiri calisir diye biliyorum. Boylece size hep 1 degeri dondurecektir. Ayrica bildigim kadariyla PHP de static oalrak tanimladiginiz class propertyleri onlari sonraki requestte sabit tutmaz. Yani su asagidaki kodu her refresh ettiginizde ayni sonucu alirsiniz 1 ve 2 function X x ; x ; Siz tam olarak nasil yapmak istiyorsunuz? Eger her dosya icin ayri bir request gonderiyorsaniz bunu $_SESSION ile veya bir service olusturarak yapabilirsiniz. $_SESSION degerini reference olarak atayabilirsiniz. $_SESSION icin soyle bir ornek yaptim : class ClassName { private $counter = 0; public function construct { if(session_id '') else { if(isset } } public function Increase public function ShowCounter } $c = new ClassName ; $c->Increase ; $c->ShowCounter ; Bu yukaridaki kodda session_destroy calisirana kadar counter ++ oalcaktir. Ozgurluk aslinda her istedigini yapabilmek degildir, istemedigini yapmamaktir. // Verdigin degeri gormeyince, gordugun degeri ver!!! // Hayatin herkes icin bir bavulu vardir!!! // Dusmek gerekir bazen hayatta; kalkmayi ogrenebilmek icin

Baştan sona tüm mesajları tekrar okurum sonra mesajım bulunsun :) Bilgiler için teşekkürler.

Şimdi şyle oluyor: ncelikle http, durumsuz bir protokol. Yani her isteğe bir cevap veriliyor ve sonra kayboluyor . E o zaman kullanıcının yaptığı her request'e cevap verildikten sonra her şey baştan başlıyor. Php, yorumlanan bir dil. Her php dosyası çağrıldığında web sunucu yazılımı mime tipine gre çeşitli şekillerde php yorumlayıcısını dürtüyor. Php yorumlayıcısı, dosyayı baştan yorumlayıp çıktı haline getirip web sunucusuna bunu cevap olarak gnder diyor. Her php dosyası için tekrar bir yorumlama süreci geçtiğine gre tüm nesneler baştan ilkleniyor sonucunu çıkarıyoruz. Kısaca static x, tek seferlik. Bu bağlamda statik değişken kullanmanın bir mantığı kalmıyor. Çünkü ne aynı oturumda istekler arasında ne de ayrı oturumlarda C# gibi Java gibi davranış bekleyemiyoruz. Session'da saklamanın mantığı yok çünkü session düştükten sonra yine başa dndük. Hadi, bir de her kullanıcıyla paylaşılsın dersek ne olacak? global variables uçalı çok oldu. Mecburen kalıcı bir yere depolayalım ki hem session uçtuğunda üzülmeyelim hem de gerektiği durumda diğer kullanıcılarla da paylaşalım . Olaylara karışmayın!