Selamun aleyküm arkadaşlar php class kullanımında class içine class load etmeyi gçreceğiz. Bu işlem modülerle çalışmak isteyen arkadaşlarımızın çok işine yarayacaktır. Mantığı şöyle anlatayım localhost dizinimide bir sitemi mevcut. Klasör adı fikirlerim
ANA PROJE LOCAL PARAMETRESİ : C:/wamp/www/fikirlerim
fikirlerim klasörü altında ise bir modul klasörümüz ve index.php dosyamız olsun.
- fikirlerim
- modul
- index.php
Modul klasörü içerisine class dosyalarımızı atacağız ve gereksinim duydukça o klasor içerisinden class ları ana class larımıza load edip kullanacağız.
Tabi module klasörüne atacağımız class dosyalarının adı ve class adları aynı olmak zorundadır.
Örnek verecek olursak form.php içerisindeki class mantığı şu şekilde olmalıdır.
1 2 3 4 5 6 |
<?php class form { #class içerisindeki function kütüphaneleri } |
Belkide sabırsızlanıyorsunuz 🙂 Lafı fazla uzatmadan icrata geçelim diyorsunuz sanki 🙂 Ama kafanızı yormayın ben sizin için ufak bir örnek çalışma yaptım ve konun en sonunda paylaşacağım inşll.
index.php dosyamızın içerisindeki kodlar şu şekilde olacaktır.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 |
<?php header("Content-type: text/html; charset=utf-8"); class module { public function load($class='') { $module = "module/{$class}.php"; if($class && file_exists($module)) { require $module; $this->$class = New $class(); } } } /*modulleri projemize load edebilmek için load etmek istediğimiz class a module classınıda extends etmemiz gerekir.*/ class welcome extends module { public function welcome_message() { $this->load('form'); /*form class ımızı projemize load ettik ve form classı içerisindeki istediğimiz functionu çalıştırabiliriz.*/ /*örnek olarak form projemiz içerisindeki upload_form function unu hemen çağaralım*/ $this->form->upload_form(); } } $class = New welcome(); $class->welcome_message(); |
Yukarıdaki basit bir örnektir. Bu sistemi dahada geliştirip zenginleştirebilirsiniz. Bu şekilde çalışan ufak bir proje yaptım ve paylaşıyorum buradan indirebilirsiniz.
ALLAHA EMANET OLSUN KALIN SAĞLICAKLA ARKADAŞLAR.
Nice article, It was helpful.
Thanx 🙂