Jump to content
Aplicatiile pentru functia de "Helper" pentru serverul de Minecraft sunt deschise !

[Php] Ce Afiseaza Php?


Guest dizzy

Recommended Posts

Rezultatul unui script PHP este de obicei text simplu care, de cele mai multe ori, este interpretat ca fiind cod HTML. Cu alte cuvinte, in majoritatea cazurilor PHP returneaza o pagina ce va fi afisata in browser. La inceput, acest lucru poate genera confuzii, intrucat sursa HTML este diferita de ceea ce se afiseaza efectiv in browser.

Spre exemplu, fie urmatoarea secventa de cod:

<?php

print "Salut";

print "Acesta este un script simplu";

?>

Probabil v-ati astepta ca rezultatul sa fie un text afisat pe 2 linii. Salvand aceasta secventa intr-un fisier PHP si accesandu-l prin intermediul unui web-server, veti observa ca rezultatul este urmatorul:

SalutAcesta este un script simplu

Desi este confuz, rezultatul este corect. Codul PHP afiseaza doar caracterele care i-au fost indicate. Sfarsitul de linie reprezinta un caracter separat, ne-printabil, dar care controleaza cum apare textul pe ecran. In cazul nostru, nu s-a transmis acest caracter (numit si new-line) si prin urmare PHP nu l-a afisat.

Sa rescriem exemplul de mai sus pentru a se afisa si caracterul "sfarsit de linie"

<?php

print "Salut";

print "\n"; # se afiseaza caracterul "new-line" care determina trecerea la un rand nou

# randul nou va fi afisat in textul trimis catre browser

print "Acesta este un script simplu";

?>

Verificand iar in browser veti constata ca nu s-a schimbat nimic. La prima vedere. In realitate rezultatul este afisat pe 2 linii, in textul trimis de PHP catre browser. Intrucat pagina este interpretata ca fiind HTML, browserul ignora caracterele new-line. Pentru verificare vizualizati sursa paginii (meniul View din browser -> view source).

Pentru a ajunge la efectele dorite (acelea de a afisa un text pe 2 linii) trebuie folosit urmatoarea secventa:

<?php

print "Salut";

print "\n"; # acum se afiseaza caracterul care determina trecerea la un rand nou

# randul nou va fi afisat in textul primit de browser (vizibil in sursa HTML)

print "<br>"; # se afiseaza tagul BR ce va fi interpretat de browser ca 'linie noua'

# linia noua va fi afisata in pagina finala HTML dupa ce este interpretata de

# browser si nu are nici o legatura cu \n

print "Acesta este un script simplu";

?>

Sursa paginii arata in felul urmator:

Salut

<br>Acesta este un script simplu

In browser nu apare tagul BR, intrucat acesta este interpretat ca sfarsit de linie. Caracterul "new-line" afisat de noi (in print "\n") este ignorat oricum. Rezutatul:

Salut

Acesta este un script simplu

Nota: Este foarte important sa se inteleaga diferenta dintre ceea ce se returneaza in urma executiei unui script PHP si ceea ce se afiseaza propriu-zis in browser. Pe scurt, PHP printeaza cod HTML care este afisat diferit de browsere.

De asemenea, trebuie inteles faptul ca functia print nu afiseaza textul pe mai multe linii daca nu se specifica acest lucru in mod express. Spre exemplu fie urmatoare secventa de cod:

<?php

print "1";

print "2";

print "3";

?>

Rezultatul va fi

123

S-a afisat doar ce s-a indicat, 3 caractere, pe o singura linie, fara spatii.

Un alt lucru important de retinut este faptul ca odata printat, un text nu mai poate fi "sters". Nu exista "undo" pentru un print. Se poate captura intregul continut ce se transmite la finalul executiei, dar nu se poate altera textul afisat de o instructiune print anume.

Intelegand aceste aspecte va va fi mai usor in lucrul cu PHP si in modul in care verificati rezultatele scripturilor voastre.

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...