Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP] use użyte po funkcji.
KotWButach
post
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
 
Start new topic
Odpowiedzi (1 - 4)
SmokAnalog
post
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
Post #3





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
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
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 (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
SmokAnalog
post
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? (IMG:style_emoticons/default/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
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 15.09.2025 - 11:29