Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > pl.comp.lang.php > #15832

Re: Laravel - jak to to działa?

From Marek S <precz@spamowi.com>
Newsgroups pl.comp.lang.php
Subject Re: Laravel - jak to to działa?
Date 2018-12-02 22:51 +0100
Organization ATMAN - ATM S.A.
Message-ID <pu1k56$dd4$1@node2.news.atman.pl> (permalink)
References <ptsctv$cfj$1@node1.news.atman.pl> <1v0xvyvpzdfv7$.1rpu9f5pj0855.dlg@40tude.net>

Show all headers | View raw


W dniu 2018-12-01 o 20:35, Borys Pogoreło pisze:

> Fasada to tylko inny sposób dostępu do kontenera IoC. Czyli np. pisząc
> DB::query() sięgasz do kontenera pod klucz zdefiniowany w pliku
> Illuminate/Support/Facades/DB.php:

To ja wiem. Sęk w tym, że w Laravelu fasady są w zasadzie puste. Coś je 
uzupełnia po uruchomieniu frameworka. Tak jest w przypadku wspomnianego 
Requesta. Fasada zawiera inicjalnie pustą tablicę, którą wypełnia nie 
wiadomo co. Gdy wołamy get(), to wywołuje się de facto odwołanie do 
wewnętrznej tablicy z polem "get", które z kolei zawiera wskaźnik do 
jakiejś metody. Z pewnością nią nie jest Request::get bo ... Request nie 
zawiera niczego takiego. Zresztą, który Request, bo znalazłem ich więcej 
niż 1?

Szukam konkretnie listingu metody get/post. Wymiękłem analizując ścieżkę 
do ścieżki zawierającą ścieżkę.

> Zaś do GET/POST najprościej się dostać przez instancję obiektu klasy
> Request automatycznie wstrzykiwaną przez podpowiadanie typów do metody
> kontrolera obsługującego bieżącą akcję, czyli po prostu:
> 
> public function twojaAkcja(Request $request)
> {
>      $zmiennaGet = $request->input('zmienna');
>      // ...
> }

Zupełnie nie o to mi chodziło lecz o źródło w/w metody.

A skoro wspominasz o tym, to również nie bardzo ogarniam takie 
wstrzykiwanie. W/g mnie wstrzykiwaniem nazywa się proces w postaci:

$obiekt1=new CośTam();
$obiekt2->metoda($obiekt1);

gdzie

class Obiekt2 {
	...

	//$_cosTam to coś, co wstrzykujemy
	public function metoda(CośTam $_cosTam) {

		}
}

Tymczasem odwrotne podejście w postaci

$obiekt2->metoda(Co $co, Nam $nam, Ślina $ślina, Na $na, Język $język, 
Przyniesie $przyniesie);

jest dla mnie również kompletnie niezrozumiałe. Sądziłem, że jakakolwiek 
metoda gdziekolwiek powinna spodziewać się ściśle konkretnych 
argumentów. Tymczasem okazuje się, ze z jakiś niejasnych względów zadziała:

$obiekt->twojaAkcja(Request $request)

jak i

$obiekt->twojaAkcja(URL $url)

Czyli wynika z tego, że w jakiś magiczny sposób powyższy $request będzie 
przekazywał wartość new Request mimo iż nigdzie nie używam operatora 
new. Tak PHP nie działa. Operator new sam się nie doda a mimo wszystko 
to działa. O co chodzi?

-- 
Pozdrawiam,
Marek

Back to pl.comp.lang.php | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread


Thread

Laravel - jak to to działa? Marek S <precz@spamowi.com> - 2018-11-30 23:17 +0100
  Re: Laravel - jak to to działa? Borys Pogoreło <borys@pl.edu.leszno> - 2018-12-01 20:35 +0100
    Re: Laravel - jak to to działa? Marek S <precz@spamowi.com> - 2018-12-02 22:51 +0100
      Re: Laravel - jak to to działa? Borys Pogoreło <borys@pl.edu.leszno> - 2018-12-03 14:01 +0100
        Re: Laravel - jak to to działa? Marek S <precz@spamowi.com> - 2018-12-04 20:55 +0100
          Re: Laravel - jak to to działa? Rafal Podsiadly <spinacz24@gmail.com> - 2018-12-05 12:41 -0800
            Re: Laravel - jak to to działa? Marek S <precz@spamowi.com> - 2018-12-06 22:43 +0100
              Re: Laravel - jak to to działa? Rafal Podsiadly <spinacz24@gmail.com> - 2018-12-06 21:50 -0800
                Re: Laravel - jak to to działa? Wojciech Bancer <wojciech.bancer@gmail.com> - 2018-12-07 09:24 +0100
                Re: Laravel - jak to to działa? Marek S <precz@spamowi.com> - 2018-12-08 00:01 +0100
                Re: Laravel - jak to to działa? Rafal Podsiadly <spinacz24@gmail.com> - 2018-12-08 00:23 -0800
                Re: Laravel - jak to to działa? Marek S <precz@spamowi.com> - 2018-12-08 19:29 +0100
                Re: Laravel - jak to to działa? Wojciech Bancer <wojciech.bancer@gmail.com> - 2018-12-08 20:27 +0100
                Re: Laravel - jak to to działa? Marek S <precz@spamowi.com> - 2018-12-08 21:53 +0100
                Re: Laravel - jak to to działa? Wojciech Bancer <wojciech.bancer@gmail.com> - 2018-12-08 22:27 +0100
                Re: Laravel - jak to to działa? Marek S <precz@spamowi.com> - 2018-12-09 00:07 +0100
                Re: Laravel - jak to to działa? Wojciech Bancer <wojciech.bancer@gmail.com> - 2018-12-09 11:19 +0100
                Re: Laravel - jak to to działa? Borys Pogoreło <borys@pl.edu.leszno> - 2018-12-09 22:43 +0100
                Re: Laravel - jak to to działa? Wojciech Bancer <wojciech.bancer@gmail.com> - 2018-12-10 20:49 +0100
                Re: Laravel - jak to to działa? Borys Pogoreło <borys@pl.edu.leszno> - 2018-12-10 21:55 +0100
                Re: Laravel - jak to to działa? Borys Pogoreło <borys@pl.edu.leszno> - 2018-12-09 22:49 +0100
                Re: Laravel - jak to to działa? Borys Pogoreło <borys@pl.edu.leszno> - 2018-12-09 22:58 +0100
                Re: Laravel - jak to to działa? Marek S <precz@spamowi.com> - 2018-12-10 22:48 +0100
                Re: Laravel - jak to to działa? Borys Pogoreło <borys@pl.edu.leszno> - 2018-12-10 23:56 +0100
                Re: Laravel - jak to to działa? Marek S <precz@spamowi.com> - 2018-12-11 23:33 +0100
                Re: Laravel - jak to to działa? Borys Pogoreło <borys@pl.edu.leszno> - 2018-12-12 14:33 +0100
                Re: Laravel - jak to to działa? Marek S <precz@spamowi.com> - 2018-12-14 22:04 +0100
                Re: Laravel - jak to to działa? Marek S <precz@spamowi.com> - 2018-12-14 22:08 +0100
                Re: Laravel - jak to to działa? Borys Pogoreło <borys@pl.edu.leszno> - 2018-12-16 12:24 +0100
                Re: Laravel - jak to to działa? Marek S <precz@spamowi.com> - 2018-12-16 16:47 +0100
                Re: Laravel - jak to to działa? Wojciech Bancer <wojciech.bancer@gmail.com> - 2018-12-16 17:01 +0100
                Re: Laravel - jak to to działa? Marek S <precz@spamowi.com> - 2018-12-08 22:03 +0100
                Re: Laravel - jak to to działa? Wojciech Bancer <wojciech.bancer@gmail.com> - 2018-12-08 22:29 +0100
                Re: Laravel - jak to to działa? Marek S <precz@spamowi.com> - 2018-12-09 00:19 +0100
                Re: Laravel - jak to to działa? Wojciech Bancer <wojciech.bancer@gmail.com> - 2018-12-09 11:10 +0100
                Re: Laravel - jak to to działa? Rafal Podsiadly <spinacz24@gmail.com> - 2018-12-09 08:36 -0800
                Re: Laravel - jak to to działa? Wojciech Bancer <wojciech.bancer@gmail.com> - 2018-12-09 18:02 +0100
                Re: Laravel - jak to to działa? Rafal Podsiadly <spinacz24@gmail.com> - 2018-12-09 09:48 -0800
                Re: Laravel - jak to to działa? Wojciech Bancer <wojciech.bancer@gmail.com> - 2018-12-09 21:24 +0100
                Re: Laravel - jak to to działa? Borys Pogoreło <borys@pl.edu.leszno> - 2018-12-09 22:55 +0100
                Re: Laravel - jak to to działa? Wojciech Bancer <wojciech.bancer@gmail.com> - 2018-12-10 20:59 +0100
                Re: Laravel - jak to to działa? Borys Pogoreło <borys@pl.edu.leszno> - 2018-12-10 21:53 +0100
                Re: Laravel - jak to to działa? Wojciech Bancer <wojciech.bancer@gmail.com> - 2018-12-10 22:10 +0100
                Re: Laravel - jak to to działa? Borys Pogoreło <borys@pl.edu.leszno> - 2018-12-10 23:54 +0100
                Re: Laravel - jak to to działa? Wojciech Bancer <wojciech.bancer@gmail.com> - 2018-12-11 10:43 +0100
                Re: Laravel - jak to to działa? Marek S <precz@spamowi.com> - 2018-12-10 23:02 +0100
                Re: Laravel - jak to to działa? Tomek <skowtm@wp.xx.pl> - 2018-12-10 10:08 +0100
                Re: Laravel - jak to to działa? Marek S <precz@spamowi.com> - 2018-12-10 23:07 +0100

csiph-web