Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]łączenie stringa i print_r
Forum PHP.pl > Forum > Przedszkole
wpaski
Witam zastanawia mnie dlaczego string "inny tekst" jest wyświetlany PO funkcji print_r bądź var_dump a nie przed.

  1. $arr = array('test');
  2. echo "inny tekst" . print_r($arr);


Dosyć dziwne zachowanie PHP, czemu tak jest i jak to obejść?
nospor
Poniewaz najpierw wykona sie print_r a dopiero potem wynik łączenia. Jak chcesz, by print_r zwracalo a nie wyswietlalo, to przyjrzyj sie w manualu drugiemu parametrowi...
wpaski
dzięki, a czemu tak jest?biggrin.gif głupie pytanie wiem, ale znajde gdzieś informację od czego to zależy, jak działa parser dokładnie? w sensie, wyśwoetlanie ma pierwszeństwo przed zwracaniem ok, ale skąd mogłem o tym wiedzieć, jest cos w manualu o tym?
nospor
Poprostu dodaj ten drugi parametr dla print_r a beddzie ci dzialac...

Domyslnie print_r wyswietla na ekran i ono sie wykona predzej niz echo skladajace sie z laczenia. Tak jest, i to jest dosc logiczne.
wpaski
wiem że będzie, spoko, nie ma tematu tylko dla mnie znowu to średnio logiczne ale ok:)
pozdrawiam.
nospor
echo "inny tekst" . print_r($arr);
zeby to sie wykonalo to najpierw idzie tak:

"inny tekst"
print_r($arr) - to sie wykonuje od razu czyli w tej postaci sie wyswietla na ekran
teraz nastepuje zlaczenie tych dwoch rzeczy
a teraz dopiero leci ECHO z tego połączenia.


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.