Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Jaka jest różnica pomiędzy echo i print ?
Forum PHP.pl > Forum > PHP
frugo69
Jaka jest różnica pomiędzy echo i print ?
Jestem początkującym w PHP i nurtuje mnie to pytanie, bo przeglądarka akceptuje zarówno echo jak i print bez problemów.
tsharek
po pierwsze: nie przeglądarka tylko interpreter PHP. A różnica "na chłopski rozum": w print można wpisywać dodatkowo zmienne w łańcuchu, natomiast w echo nie można przez co parsowanie takiego łańcuchu jest o ciut szybsze. Dla przejżystości kodu lepiej używać echo.
zimi
Cytat
w print można wpisywać dodatkowo zmienne w łańcuchu, natomiast w echo nie można przez co parsowanie takiego łańcuchu jest o ciut szybsze.

możesz podać przykład jak w łańcuchu w print można wpisywać zmienne, a w echo nie? O.o
trochę mnie to zaintrygowało

Dla przejrzystości to się używa słowników ortograficznych
natomiast jaki wpływ ma użycie konstrukcji print zamiast echo na przejrzystość nie jestem w stanie stwierdzić...
a to że się do czegoś przyzwyczaiłeś to inna bajka

w manualu w konstrukcji print można znaleźć link z różnicami

główna różnica polega na tym że print zwraca zawsze wartość 1
echo ma natomiast ciekawą składnie czego się właśnie teraz dowiedziałem
  1. <?php
  2. echo'tekst', ' jakiś inny tekst', ' i kolejny';//lub
  3. echo('tekst'), (' jakiś inny tekst'), (' i kolejny');
  4. ?>

echo jest w prawdzie trochę szybsza ale jest to związane z faktem że print właśnie zwraca liczbę 1... i różnica jest "nieistotna" jak to napisali pod wskazanym adresem

jeśli o czymś zapomniałem doczytasz w manualu i linku z manuala który podałem
frugo69
Z tą przeglądarką to rzeczywiście przesadziłem. Dzięki za odpowiedzi.
Speedy
Jedyna różnica między tymi funkcjami jest taka, że funkcja print zwraca wartość booleanowską - true, a funkcja echo nie.

Można to łatwo sprawdzić

  1. <?php
  2.  
  3. $x = 'x';
  4. $y = 'y';
  5.  
  6. if(print($x))
  7. {
  8. print(' funkcja print zwróciła true');
  9. }
  10.  
  11. // wypisze: x funkcja print zwróciła true
  12.  
  13.  
  14. if(echo($y))
  15. {
  16. echo(' funkcja echo zwróciła true');
  17. }
  18.  
  19. // wypluje błąd
  20.  
  21.  
  22. ?>


Cytat
Dla przejżystości kodu lepiej używać echo.


bo jest krótsze o jedną literę? tongue.gif
tsharek
fuck:) powaliło mi się z pojedynczym, a podwójnym cudzysłowem:) Co do ortografii: jak pisze na szybko to zawsze robię jakiś byk, ale wydaje mi się że piszę komunikatywnie tongue.gif
@Speedy: jedna litera czasami robi dużo (i do przejrzystości też:). Kiedyś pamiętam że w ATARI BASICU był zajefajny alias do funkcji PRINT właśnie. Był to po prostu pytajnik (?). Super sprawa wtedy to było:)
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.