Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP] use użyte po funkcji.
KotWButach
post 9.02.2018, 13:52:00
Post #1





Grupa: Zarejestrowani
Postów: 361
Pomógł: 10
Dołączył: 8.02.2012

Ostrzeżenie: (0%)
-----


Witam, mam pytanie jak rozumieć działanie tego kawałka kodu? Przyznam że pierwszy raz trafiam na coś tak dziwnego. Niestety tutorial jest w niezrozumiałym języku... wiec pozostaje mi tylko analiza samego kodu. Tłumacz nie radzi sobie ani z tłumaczeniem na PL ani na Ang.

  1. function($slug, $id) use ($router) {
  2. // do something
  3. }


Ten post edytował KotWButach 9.02.2018, 13:53:03
Go to the top of the page
+Quote Post
SmokAnalog
post 9.02.2018, 13:56:02
Post #2





Grupa: Zarejestrowani
Postów: 1 707
Pomógł: 266
Dołączył: 3.07.2012
Skąd: Poznań

Ostrzeżenie: (0%)
-----


http://php.net/manual/en/functions.anonymous.php

Zobacz na Przykład #3.
Go to the top of the page
+Quote Post
trueblue
post 9.02.2018, 13:57:37
Post #3





Grupa: Zarejestrowani
Postów: 6 761
Pomógł: 1822
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


Example #3 http://php.net/manual/en/functions.anonymous.php


--------------------
Go to the top of the page
+Quote Post
Pyton_000
post 9.02.2018, 14:34:05
Post #4





Grupa: Zarejestrowani
Postów: 8 068
Pomógł: 1414
Dołączył: 26.10.2005

Ostrzeżenie: (0%)
-----


Tak w dużym uproszczeniu use() to takie global smile.gif
Go to the top of the page
+Quote Post
SmokAnalog
post 9.02.2018, 15:06:56
Post #5





Grupa: Zarejestrowani
Postów: 1 707
Pomógł: 266
Dołączył: 3.07.2012
Skąd: Poznań

Ostrzeżenie: (0%)
-----


A swoją drogą, jak szukałeś zanim napisałeś na forum? Wygooglałem "php funkcja use" i pierwszy wynik z brzegu:

Cytat
Niestety (a może i stety) funkcja anonimowa nie ma do nich bezpośredniego dostępu i to my musimy wskazać jakich zmiennych chcemy użyć. Z tego właśnie względu powyższy kod nic nie wyświetli oraz zgłosi notice.

$zmienna = 123;
$funkcja = function() use ($zmienna)
{
echo $zmienna;
};

$funkcja();

Dopiero użycie use spowodowało, że zmienna jest widoczna wewnątrz funkcji anonimowej. W celu przekazania większej ilości zmiennych wystarczy oddzielić je od siebie przecinkiem.


Chyba polski jest dla Ciebie zrozumiałym językiem? tongue.gif

Serio, naucz się szukać informacji, bo to jest najważniejsza umiejętność dla programisty.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 20.04.2024 - 04:45