Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]echo, Dziwne zachowanie
vonski
post
Post #1





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

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


Witam.

Pytanie z kategorii dziwnych (IMG:style_emoticons/default/smile.gif)
Jako że powoli przymierzam się do egzaminu na ZCE, chcę zbadać każdą "pierdółkę", a do takich zapewne należy mój problem (IMG:style_emoticons/default/smile.gif)
Otóż, czy ktoś mi może wytłumaczyć, dlaczego pisząc coś takiego:

  1. echo Hello;


nie dostaję komunikatu o błędzie tylko skrypt ładnie wyświetla mi tekst 'Hello'? Chodzi mi o to, że nie używam ani pojedynczych ani podwójnych cudzysłowów.
Oczywiście jak zrobię tak:

  1. define('Hello', 'Czesc');
  2. echo Hello;


to otrzymam w wyniku: Czesc. I to zachowanie rozumiem. Czy to jest tak, że jak PHP trafi na coś co wygląda na stałą, a nie było to wcześniej zdefiniowane, 'konwertuje' to na string?

Druga sprawa. Z tego co mi wiadomo, echo() nie jest funkcją, a konstrukcją językową, dlatego nie może być użyte w kontekście funkcji. W dodatku echo (w przeciwieństwie do print() ) rzekomo nie zwraca żadnej wartości.
A jednak jak napiszę coś takiego:

  1. echo co ? nic : duzo


to nie dość, że nadal nie używam cudzysłowów to jeszcze w wyniku dostaję tekst 'nic'. Czyli tak jakby to: echo co - zwraca mi true. O co tu chodzi? (IMG:style_emoticons/default/smile.gif)

Przepraszam za być może głupie pytanie, ale ciekawi mnie to, a czytałem manuala wraz z komentarzami i nie znalazłem na to odpowiedzi.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
nospor
post
Post #2





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




Cytat
Jako że powoli przymierzam się do egzaminu na ZCE, chcę zbadać każdą "pierdółkę", a do takich zapewne należy mój problem
Otóż, czy ktoś mi może wytłumaczyć, dlaczego pisząc coś takiego:

[PHP] pobierz, plaintext
echo Hello;


nie dostaję komunikatu o błędzie

Przymierzasz sie do ZCE a nie potrafisz wlaczyc wyswietlania wszystkich bledow? (IMG:style_emoticons/default/tongue.gif)

Odpowiedz: wlacz wyswietlanie wszystkich bledow a blad zobaczysz a przy okazji odpowiedź na swoje pytanie
Go to the top of the page
+Quote Post
user767
post
Post #3





Grupa: Zarejestrowani
Postów: 178
Pomógł: 5
Dołączył: 13.09.2010

Ostrzeżenie: (40%)
XX---


  1. <?php
  2.  
  3. ini_set( 'display_errors', 'On' );
  4.  
  5.  
  6. ?>
Go to the top of the page
+Quote Post
Mephistofeles
post
Post #4





Grupa: Zarejestrowani
Postów: 1 182
Pomógł: 115
Dołączył: 4.03.2009
Skąd: Myszków

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


  1. echo co ? nic : duzo

Nie echo zwraca wartość, a co "istnieje".
Go to the top of the page
+Quote Post
vonski
post
Post #5





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

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


Cytat
Przymierzasz sie do ZCE a nie potrafisz wlaczyc wyswietlania wszystkich bledow?


Haha faktycznie, nie wpadłem na to (IMG:style_emoticons/default/wstydnis.gif) (IMG:style_emoticons/default/smile.gif)
Dzięki za odpowiedź.

Mephistofeles - dzięki, teraz czaje dlaczego tak jest.
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: 22.08.2025 - 14:33