Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [php] rola przecinka
szajens
post 26.01.2014, 21:47:34
Post #1





Grupa: Zarejestrowani
Postów: 150
Pomógł: 4
Dołączył: 3.01.2010

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


Witam serdecznie,

zastanawiam się jaką role pełni przecinek między zmiennymi, nie mogę znaleźć informacji na ten temat. Wiem że np można nim oddzielić zmienne w funkcji przy użyciu global np.
  1. function foo() {
  2. global $zmienna1, $zmienna2;
  3. }


ale interesuje mnie dokładniejsze wyjaśnienie, może ktoś pomoże, jakiś link?
Go to the top of the page
+Quote Post
ghost1511
post 27.01.2014, 08:12:56
Post #2





Grupa: Zarejestrowani
Postów: 186
Pomógł: 18
Dołączył: 2.09.2010

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


http://php.pl/Wortal/Artykuly/PHP/Podstawy...Laczenie-ciagow
Go to the top of the page
+Quote Post
szajens
post 27.01.2014, 11:59:07
Post #3





Grupa: Zarejestrowani
Postów: 150
Pomógł: 4
Dołączył: 3.01.2010

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


Cytat(ghost1511 @ 27.01.2014, 08:12:56 ) *

W podanym przez Ciebie linku jest o operatorze kropka czyli laczenia ciagow,a mnie interesuje przecinek
Go to the top of the page
+Quote Post
nospor
post 27.01.2014, 12:03:06
Post #4





Grupa: Moderatorzy
Postów: 36 440
Pomógł: 6290
Dołączył: 27.12.2004




echo 'to','tez','dziala','podobnie','jak','kropka';
lepiej?

ps: ale nie mozna przykladac znaku rownosci miedzy kropka a przecinkiem.


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
kreatiff
post 27.01.2014, 12:16:25
Post #5





Grupa: Zarejestrowani
Postów: 324
Pomógł: 105
Dołączył: 7.08.2012

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


Jesli się nie mylę to z technicznego punktu widzenia
echo 'string1' . 'string2';
najpierw łączy te stringi w pamięci, potem drukuje, podczas gdy
echo 'string1' , 'string2';
drukuje je po kolei (jak leci).

Różnica żadna, poza iteracjami idącymi w miliony, gdzie zyskuje się trochę czasu na korzyść przecinka.
Go to the top of the page
+Quote Post
--szajens--
post 27.01.2014, 23:18:13
Post #6





Goście







Cytat(nospor @ 27.01.2014, 12:03:06 ) *
echo 'to','tez','dziala','podobnie','jak','kropka';
lepiej?


To co z tego że działa, przykładowo:
  1. $szyfr = sha1(sha1(sha1(sha1(sha1(sha1(sha1(sha1(sha1(sha1(
  2. sha1(sha1(sha1(sha1(sha1(sha1(sha1(sha1(sha1(sha1(sha1(sha1(
  3. md5(sha1(sha1(sha1(sha1(sha1(sha1(sha1(sha1(sha1(sha1(sha1(
  4. sha1(md5($coś))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))));
to też zadziała smile.gif ale chodzi mi raczej o sens stosowania i ogólnie znaczenie przecinka znajdującego się między zmiennymi smile.gif


Cytat(kreatiff @ 27.01.2014, 12:16:25 ) *
Jesli się nie mylę to z technicznego punktu widzenia
echo 'string1' . 'string2';
najpierw łączy te stringi w pamięci, potem drukuje, podczas gdy
echo 'string1' , 'string2';
drukuje je po kolei (jak leci).

Różnica żadna, poza iteracjami idącymi w miliony, gdzie zyskuje się trochę czasu na korzyść przecinka.
Czy ktoś może potwierdzić tezę kolegi? Podać jakieś źródło?
Go to the top of the page
+Quote Post
zegarek84
post 27.01.2014, 23:36:47
Post #7





Grupa: Zarejestrowani
Postów: 1 332
Pomógł: 294
Dołączył: 12.10.2008
Skąd: Olkusz

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


Cytat(-szajens- @ 27.01.2014, 23:18:13 ) *
Czy ktoś może potwierdzić tezę kolegi? Podać jakieś źródło?

echo

jaki to problem puścić sobie iterację po wielu zmiennych??
w manualu pisze
Cytat
// Some people prefer passing multiple parameters to echo over concatenation.

czyli przekazujesz wiele parametrów a nie łączysz ciągi. Język ciągle zmienia się i to może być mało zauważalne, tak jak wiele razy była dyskusja nad "tekst" i 'tekst', gdzie tekst generowany w pojedynczym apostrofie jest minimalnie szybszy gdyż nie musi być ponownie "parsowany" pod kontem zmiennych... dodatkowo można by rzec, że przecinek jest jakby tutaj prawie przeciążonym operatorem w stylu C++...

ps.
to i nawet doczekamy się wątków ;]
http://www.php.net/manual/pl/pthreads.installation.php - php 5.6
http://us2.php.net/manual/pl/book.pthreads.php

Ten post edytował zegarek84 27.01.2014, 23:43:18


--------------------
Jeśli twoja ręka rusza do przodu powstrzymaj swój gniew; gdy wyprzedza cię twój gniew - wycofaj rękę.

Go to the top of the page
+Quote Post
--szajens--
post 27.01.2014, 23:55:48
Post #8





Goście







Cytat(zegarek84 @ 27.01.2014, 23:36:47 ) *
echo

jaki to problem puścić sobie iterację po wielu zmiennych??

Przecinek można używać nie tylko w instrukcji echo.
Interesuje mnie właśnie co i jak, ciężko znaleźć coś więcej na ten temat
Go to the top of the page
+Quote Post
nospor
post 27.01.2014, 23:58:47
Post #9





Grupa: Moderatorzy
Postów: 36 440
Pomógł: 6290
Dołączył: 27.12.2004




Nie ogariam cie.... przecinek sluzy do np. oddzielnie argumrntow funkcji.


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
--szajens--
post 28.01.2014, 00:55:50
Post #10





Goście







Cytat(nospor @ 27.01.2014, 23:58:47 ) *
Nie ogariam cie.... przecinek sluzy do np. oddzielnie argumrntow funkcji.

Bo ja chyba źle tłumacze smile.gif

Jaka jest rola przecinka między zmiennymi? Ale nie w instrukcji echo, a ogólnie w skrypcie.
np dając w funkcji
  1. function cos() {
  2. global $zm, $zm2, $zm3;
  3. }

przypisuje zmiennym global, do czego jeszcze można wykorzystać przecinek, do czego on służy oprócz oddzielania argumentów w funkcji
Go to the top of the page
+Quote Post
zegarek84
post 28.01.2014, 10:01:48
Post #11





Grupa: Zarejestrowani
Postów: 1 332
Pomógł: 294
Dołączył: 12.10.2008
Skąd: Olkusz

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


tak jak wspomniałeś do deklaracji zmiennych też, tak też jest w C++, JavaScript i Java...


--------------------
Jeśli twoja ręka rusza do przodu powstrzymaj swój gniew; gdy wyprzedza cię twój gniew - wycofaj rękę.

Go to the top of the page
+Quote Post
irmidjusz
post 28.01.2014, 20:18:26
Post #12





Grupa: Zarejestrowani
Postów: 279
Pomógł: 60
Dołączył: 25.02.2012

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


jeszcze np. do inicjalizacji czy zmiany zmiennych w pętli for:
  1. for($i=0, $j=k-1; $i < $j ; ++$i, --$j){...}


ogólnie przecinkiem można rozdzielać wykonywane instrukcje, ale wartością takiego wyrażenia jest wartość instrukcji ostatniej (na prawo).

W echo, jak już zostało wspomniane, po przecinku podajesz kolejne parametry do wyechowania.


--------------------
there is much to be learned
Go to the top of the page
+Quote Post
szajens
post 28.01.2014, 22:00:56
Post #13





Grupa: Zarejestrowani
Postów: 150
Pomógł: 4
Dołączył: 3.01.2010

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


A widział ktoś może jakieś źródło odnośnie roli przecinka?
Go to the top of the page
+Quote Post
vonski
post 28.01.2014, 22:04:28
Post #14





Grupa: Zarejestrowani
Postów: 292
Pomógł: 89
Dołączył: 27.12.2006
Skąd: Warszawa

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


http://www.php.net/manual/en/language.oper....precedence.php - ostatni w tabelce. Dodatkowe informacje: many uses - co wlasciwie potwierdza, to co zostalo napisane w tym temacie smile.gif
Wiecej zrodel odnosnie uzyc przecinka nie znam.

Ten post edytował vonski 28.01.2014, 22:05:03


--------------------
Zend Certified Engineer | Microsoft Certified Professional: Programming in HTML5 with JavaScript & CSS3 | Blog
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: 29.03.2024 - 06:45