Za izpis podatkov v PHP najpogosteje uporabljamo konstrukciji echo in print, za oblikovan izpis pa funkcijo printf(). Te možnosti se med seboj nekoliko razlikujejo, zato je pomembno vedeti, kdaj je posamezna najprimernejša.
Osnovna pravila
- Izpis v PHP ne doda samodejno novih vrstic ali presledkov, zato jih moramo zapisati sami.
- Za preprost izpis najpogosteje uporabimo
echo. printje podoben konstrukcijiecho, vendar sprejme le en argument.printf()uporabljamo, kadar želimo natančneje oblikovati izpis.
Pomni: Konstrukciji echo in print sta namenjeni predvsem preprostemu izpisu, medtem ko je printf() primeren za oblikovan izpis vrednosti.
echo
echo je jezikovna konstrukcija, ki izpiše enega ali več izrazov. Pogosto jo uporabljamo za izpis besedila, HTML oznak in vrednosti spremenljivk.
Primer:
<?php
$sporocilo = "Pozdrav!";
echo $sporocilo;
echo "<h3>To je primer izpisa v PHP.</h3>";
?>
To je primer izpisa v PHP.
Izpis narekovajev
Če v nizu uporabljamo dvojne narekovaje, jih moramo pravilno zapisati. To lahko naredimo tako, da uporabimo enojne narekovaje znotraj niza ali pa posebni znak \.
<?php
echo "<h5 class=\"posebenNaslov\">To je naslov.</h5>";
echo "<h5 class='posebenNaslov'>To je naslov.</h5>";
?>
Izpis spremenljivk
<?php
$ime = "Janez";
$starost = 17;
$oddelek = "4a";
echo $ime . "<br>";
echo $starost . "<br>";
echo $oddelek;
?>
17
4a
Izpis besedila in spremenljivke
Pri izpisu lahko uporabimo spajanje nizov z operatorjem . ali pa spremenljivko vključimo neposredno v niz z dvojnimi narekovaji.
<?php
$ime = "Micka";
echo "Pozdravljena, " . $ime . "!<br>";
echo "Ime je $ime.";
?>
Ime je Micka.
print je podoben konstrukciji echo, vendar izpiše le en argument in vrne vrednost 1. Zato se v praksi najpogosteje uporablja pri preprostem enkratnem izpisu.
Primer:
<?php
$starost = 17;
print "Janez je star " . $starost . " let.";
?>
printf()
printf() uporabljamo, kadar želimo oblikovan izpis. V besedilu uporabimo posebne oznake, na primer %s za niz, %d za celo število in %f za decimalno število.
| Oznaka | Opis |
|---|---|
%s |
niz |
%d |
celo število |
%f |
decimalno število |
%x |
šestnajstiški zapis |
%% |
znak % |
Primer uporabe:
<?php
$ime = "Ana";
$tocke = 95;
$povprecje = 4.5;
printf("Uporabnica %s ima %d točk in povprečje %.1f.", $ime, $tocke, $povprecje);
?>
Če želimo izpisati znak %, uporabimo zapis %%.
Pozor: Pri funkciji printf() morajo oznake v besedilu ustrezati tipu in številu podanih argumentov. Neujemanje lahko povzroči nepravilen izpis.
Primerjave
Konstrukciji echo in print sta si podobni, vendar nista povsem enaki. Funkcija printf() pa je namenjena drugačnemu načinu izpisa.
echolahko izpiše enega ali več izrazov.printizpiše en sam argument.printf()omogoča natančno oblikovanje izpisa s posebnimi oznakami.echoinprintsta primernejša za preprost izpis,printf()pa za strukturiran in nadzorovan prikaz podatkov.
Pomni: Če želimo predvsem hitro in preprosto izpisovati besedilo, je najpogostejša izbira echo. Če pa želimo natančno določiti obliko izpisa števil in nizov, uporabimo printf().
Priporočila
- Za običajen izpis besedila in HTML oznak je priporočljiva uporaba
echo. - Pri izpisu spremenljivk v daljšem besedilu naj bo zapis čim bolj pregleden.
- Za oblikovan izpis številskih in besedilnih podatkov je priporočljiva uporaba
printf(). - Pri izpisu HTML kode je treba paziti na pravilno zapisane narekovaje.
- Pri izpisu več vrstic je treba prehode v novo vrstico zapisati izrecno, na primer z oznako
<br>.
Pogoste napake
- Pri izpisu se pričakuje samodejni prehod v novo vrstico, čeprav ga konstrukciji
echoinprintne dodata sami. - Narekovaji v nizih niso pravilno zapisani ali zaključeni.
- Pri funkciji
printf()je uporabljena neustrezna oznaka za podani tip podatka. - Število oznak v funkciji
printf()se ne ujema s številom podanih argumentov. - Pri izpisu besedila in spremenljivk je zapis nepregleden zaradi neustreznega spajanja nizov.
Pozor: Izpis v PHP je lahko vsebinsko pravilen, vendar še vedno nepregleden. Pomembna ni le pravilnost, temveč tudi jasnost zapisa, saj ta vpliva na razumljivost in vzdrževanje kode.