Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Backslash przed explode
sadistic_son
post
Post #1





Grupa: Zarejestrowani
Postów: 1 495
Pomógł: 245
Dołączył: 1.07.2009
Skąd: Bydgoszcz

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


Cześć.
Natknąłem się w książce na taki zapis:
  1. $requestString = \explode("?", $request);

Co oznacza ten '\' przed explode?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 8)
nospor
post
Post #2





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




No i tu wracamy do NAMESPACE ktore miales juz ogarnac (IMG:style_emoticons/default/wink.gif)
\ sluzy do oddzelania czesci w NAMESPACE. jeden \ na samym poczatku oznacza glowny NAMESPACE
Go to the top of the page
+Quote Post
sadistic_son
post
Post #3





Grupa: Zarejestrowani
Postów: 1 495
Pomógł: 245
Dołączył: 1.07.2009
Skąd: Bydgoszcz

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


Przeczytałem o namespace to co mi podesłałeć, plus parę innych opisów. To żadne rocket science, ot konieczne do rozróżnienia potencjalnie powtarzających się nazw klas.
Ale co ma namespace do funkcji explode ? Po co tutaj to zastosowanie? Przecież explode jest wbudowane w php, to nie jest żadna nazwa metody którą sami sobie wymyśleliśmy.

Ten post edytował sadistic_son 21.12.2022, 10:03:36
Go to the top of the page
+Quote Post
viking
post
Post #4





Grupa: Zarejestrowani
Postów: 6 380
Pomógł: 1116
Dołączył: 30.08.2006

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


https://www.php.net/manual/en/language.namespaces.global.php
Go to the top of the page
+Quote Post
nospor
post
Post #5





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Temu wlasnie nie ma raczej sensu uzywanie \ przy standardowych funkcjach. Nie mniej jednak niektorzy uzywaja, na wypadek jakby ktos stworzyl lokalne explode. Bez sensu, ale od biedy ktos moze tak zrobic
Go to the top of the page
+Quote Post
sadistic_son
post
Post #6





Grupa: Zarejestrowani
Postów: 1 495
Pomógł: 245
Dołączył: 1.07.2009
Skąd: Bydgoszcz

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


Ok, czyli podsumowując - tutaj jest to zbędne, ale nie zaszkodzi.
Dzięki.
Go to the top of the page
+Quote Post
nospor
post
Post #7





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Podejrzewam rowniez, ze uzycie \ jest minimalnie szybsze bo bez \ php wpierw pewnie szuka explode w lokalnym namespace a dopiero potem w globalnym. Roznica w czasie zapewne jednak nie do zauwazenia golym okiem (IMG:style_emoticons/default/wink.gif)
Go to the top of the page
+Quote Post
sadistic_son
post
Post #8





Grupa: Zarejestrowani
Postów: 1 495
Pomógł: 245
Dołączył: 1.07.2009
Skąd: Bydgoszcz

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


A widzisz, to przydatny hint na przyszłość, na okazję programowania portalu dla miliona użytkowników (IMG:style_emoticons/default/wink.gif) Te parę mikrosekund może mieć jakieś znaczenie.
Go to the top of the page
+Quote Post
Salvation
post
Post #9





Grupa: Zarejestrowani
Postów: 403
Pomógł: 72
Dołączył: 15.07.2014

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


Cytat(nospor @ 21.12.2022, 10:09:53 ) *
Podejrzewam rowniez, ze uzycie \ jest minimalnie szybsze bo bez \ php wpierw pewnie szuka explode w lokalnym namespace a dopiero potem w globalnym. Roznica w czasie zapewne jednak nie do zauwazenia golym okiem ;)

Zgadza się. Przy dużych klasach (głównie legacy pisane na kolanie) taki zapis jest optymalizacją.
Druga opcja, to po prostu użycie use'a z tą daną funkcją na górze pliku - wtedy interpreter zanim wczyta klasę już wie jakich funkcji i skąd się spodziewać.
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: 23.08.2025 - 15:49