Giriş yapmadınız.

Duyuru

TÜRKÇE KİTAP DUYURUSU:
Laravel 5 : Laravel 5.1 Güzelliği (Türkçe)
Vue.js 2 : Vue.js 2 Majesteleri (Türkçe)

#1 07.01.2019 11:16:29

deathisonitsway
Üye
Kayıtlı: 01.02.2016
Mesajlar: 375

laravel core question -- instance array using

Selam herkese.Şimdi laravel core da genelde şöyle bir kullanım görüyoruz.

$this['app']->request; // vs...

ben bunu nasıl yaptığını tespit edemedim.Bileniniz varsa yardım almak isterim.Gidişat şöyle.

Başlangıç application nesnesinde kurucu sınıfta çalıştırılan methodlardan biri aşağıdaki link.

https://github.com/laravel/framework/bl … n.php#L166

instance methoduna app ve objesini gonderiyor.Aşağıdaki kodu o instance ın yukarısına koyduğumda çalışmıyor.Altına eklediğimde application objesini döndürüyor.

dd($this['app']);

Hal böyle olunca yaptığı yer burası diye düşünüyorum.İnstance methodu da container objesinde.Aşağuda linkte


https://github.com/laravel/framework/bl … r.php#L391

burada yapıyor ama

 // We'll check to determine if this type has been bound before, and if it has
        // we will fire the rebound callbacks registered with the container and it
        // can be updated with consuming classes that have gotten resolved here.
        $this->instances[$abstract] = $instance;

yaptığı yer burası..doğrusu anlamadım.. __get __set methodu ile yapabilir anca bunu..

o da container nesnesinin en altında...

https://github.com/laravel/framework/bl … .php#L1256


bunu nasıl yaptığını bileniniz var mı? ben verdiği gibi __get __set ile hata alıyorum mesela...

$this[$key]

bu sekil kullanamazsın diyor bana hata...


Laravel does not save you. Php knowledge only save you. Do not become a Laravel programmer, just the opposite,become php developer.

Çevrimdışı

#2 07.01.2019 11:52:50

sineld
Yönetici
Yer: Bursa
Kayıtlı: 26.12.2012
Mesajlar: 1,397
Website

Yanıt: laravel core question -- instance array using

Burada şu an'a kadar üç adet video yayınlandı, devamı gelecek sanırım. Senin soruna cevap bu videolarda mevcut:

https://laravelcoreadventures.com/

Çevrimdışı

#3 07.01.2019 12:57:50

deathisonitsway
Üye
Kayıtlı: 01.02.2016
Mesajlar: 375

Yanıt: laravel core question -- instance array using

http://php.net/manual/tr/class.arrayobject.php#118872

olay aslında bu da.laravelde takip etmem lazım onu.videolar 3 tane umarım gerisi gelir sineld hocam.


Laravel does not save you. Php knowledge only save you. Do not become a Laravel programmer, just the opposite,become php developer.

Çevrimdışı

#4 07.01.2019 15:22:28

mgsmus
Moderatör
Yer: Mersin
Kayıtlı: 17.08.2013
Mesajlar: 1,420
Website

Yanıt: laravel core question -- instance array using

\Illuminate\Container\Container dahilindeki tüm sınıflarda $this['app'] şeklinde ulaşabilmenizin sebebi @deathisonitsway 'in belirttiği gibi Container sınıfının ArrayAccess arayüzünü kullanması. Container içerisinde $this['app'] demek \Illuminate\Container\Container::make('app') demek olmuş oluyor.  Container::offsetGet(), Container::offsetSet() ve diğer ArrayAccess yöntemlerine bakabilirsiniz.

Çevrimdışı

#5 07.01.2019 15:49:20

deathisonitsway
Üye
Kayıtlı: 01.02.2016
Mesajlar: 375

Yanıt: laravel core question -- instance array using

mgsmus yazdı:

\Illuminate\Container\Container dahilindeki tüm sınıflarda $this['app'] şeklinde ulaşabilmenizin sebebi @deathisonitsway 'in belirttiği gibi Container sınıfının ArrayAccess arayüzünü kullanması. Container içerisinde $this['app'] demek \Illuminate\Container\Container::make('app') demek olmuş oluyor.  Container::offsetGet(), Container::offsetSet() ve diğer ArrayAccess yöntemlerine bakabilirsiniz.

Süpersin aynen oyleymiş mgsmus usta..

https://github.com/laravel/framework/bl … .php#L1232

arrayAccess interface işiymiş bu smile offSetset ve get ile tanıyor bunlar ve orada linkteki gibi işlem yapıyor.
Böylelikle $this['app'] deyince bind etmiş oluyor.çağırırkende offsetGet ile make methodu çağırılıyor.

ve böylelikle güzel bir şey daha öğretmiş olduk millete smile


Laravel does not save you. Php knowledge only save you. Do not become a Laravel programmer, just the opposite,become php developer.

Çevrimdışı

#6 07.01.2019 16:00:07

sineld
Yönetici
Yer: Bursa
Kayıtlı: 26.12.2012
Mesajlar: 1,397
Website

Çevrimdışı

#7 07.01.2019 16:00:54

deathisonitsway
Üye
Kayıtlı: 01.02.2016
Mesajlar: 375

Yanıt: laravel core question -- instance array using

sineld yazdı:

Çok müvetazisin Ali tongue

ahah smile öyleyimdir.
Laraveli böyle seviyorum işte abi ben ne yapim.huyum kurusun.


Laravel does not save you. Php knowledge only save you. Do not become a Laravel programmer, just the opposite,become php developer.

Çevrimdışı

Forum alt kısmı