I pored toga što prvo instaliramo i pripremimo sve što nam je potrebno za učenje i programiranje nekog programskog jezika; kao što smo se pripremili za učenje PHP programskog jezika u prošlom postu PHP tutorijala, pogledajte ovde; i pošto smo ispisali čuveno “Hello World“ na veb stranici lokalnog servera; prvi koraci u programiranju započinju promenjivima. Promenjive u programiranju su mesta u memoriji računara gde se čuvaju podaci koje program koristi za izračunavanje, obradu i manipulaciju. U PHP programskom jeziku, kao i u drugim programskim jezicima; promenjive su imena koja se koriste za referenciranje mesta u memoriji. Najlakši način da shvatite promenjive jeste da iste zamislite kao memorijske kutice. Ali nisu sve kutice iste. U neke možete staviti neku vrednost koja predstavlja celi broj, dok u neke možete staviti brojeve sa pokretnim zarezom. Postoje kutice i u koje možete staviti skup bilo kojih karaktera. Da bi ste znali koju vrednost možete staviti u neku promenjivu, treba da znate koji tip podataka ste odlučili da dodelite nekoj promenjivoj. Svi programski jezici imaju promenjive i određene tipove podataka. Većina osnovnih tipova promenjivi su u suštini isti ili slični. Međutim neki programski jezici imaju više tipova podataka dok drugi imaju manje. Isto tako čak i isti naziv tipa promenjive u mnogim programskim jezicima mogu imati drugačija ograničenja. Na primer u PHP programskom jeziku tip float podataka ima preciznost double tipa podataka, što znači da vrednost brojeva sa pokretnim zarezom mnogo veća nego što bi bila da je tip float podataka u C# programskom jeziku. Ili umesto tipa podataka char u C# programskom jeziku, u PHP programskom jeziku se koristi tip string, dok je char funkcija koja se koristi da pretvori neki ASCII broj u karakter. Da, ne biste bili zbunjeni na samom početku učenja tipova podataka, najbolje da se koncentrišemo na tipove podataka koje ima PHP programski jezik.
Promenjive
predstavljaju osnovni element svakog programa, jer omogućuju da se podaci
pohranjuju i menjaju tokom izvršavanja programa. U PHP programskom jeziku,
promenjive se deklarišu navođenjem njihovog naziva, a tip podataka se
automatski određuje na osnovu vrednosti koju im se dodeljuje. Nazivi
promenjivih mogu sadržati slova, brojeve i donje crte; ali ne mogu započeti
brojem ili sadržavati razmake kao i specijalne karaktere. U PHP programskom
jeziku morate koristiti čak i prefiks $ pre naziva promenjive, da bi interpretator PHP programskog jezika znao da se radi o promenljivoj. Na primer, ako hoćete da
nekoj promenjivoj dodelite neki celi broj, uradićete to na sledeći način:
$number = 10;
Prvo što vidimo u prethodnoj liniji koda jeste da imamo promenjivu $number kojoj je dodeljena vrednost celog broja 10. Važno je da nazivi promenjivih uvek budu jasni i opisni kako bi se lako razumela svrha njihovog korišćenja u programu. Ovde je očigledno da promenjiva sadrži neki broj. Međutim, ako promenjiva sadrži broj koji predstavlja na primer trinaestu platu, onda promenjivu nazovite $trinaestaPlata. Imajte u vidu i da je PHP programski jezik case-sensitive što znači da razlikuje mala i velika slova. Tako na primer $number i $Number nisu ista promenjiva, već dve različite. Ako malo bolje pogledate naziv promenjive $trinaestaPlata, shvatićete da se promenjive pišu malim slovima, preciznije Camel Case Notation – kamel notacijom. Iako nećete dobiti grešku ako nazovete promenjivu velikim slovom, ipak treba da poštujete programersku etiku. U PHP programskom jeziku vi ne deklarišete promenjive kao u mnogim drugim programskim jezicima. Onog momenta kada dodelite neku vrednost nekoj promenjivoj, promenjiva dobija automatski svoj tip podataka u zavisnosti šta je vrednost promenjive i odvaja prostor u memoriji za njeno skladištenje.
Koje sve tipove podataka ima PHP programski jezik?
Svaki tip podataka ima svoje karakteristike i način rukovanja njima. Važno je poznavati tipove podataka kako bi se efikasno koristile promenjive u programu. U PHP programskom jeziku postoji tačno 8 tipova podataka i to su:
- integer – koristi se za celobrojne brojeve
- float – koristi se za brojeve sa pokretnim zarezom
- string – koristi se za sve karaktere
- boolean – ima samo jednu od dve vrednosti; može biti true – tačno ili false – netačno
- array – koristi se kreiranje nizova koji mogu imati elemente različitih tipova podataka
- object – koristi se kada sami kreirate neku klasu, i koristite je kao objekat. Može da zameni bilo koji drugi tip podataka.
- resource – koristi se za vanjske resurse poput datoteka i baza podataka
- null – ovo je više vrednost nego tip podataka, ali zbog načina kako PHP deklariše promenjive, null se tretira kao tip podataka koji označava ništa, što nije isto kao i prazan string ili 0
Najbolji
način da se upoznate sa tipovima podataka jeste da napravite jednu stranicu gde
ćete ispisati svih osam PHP tipova podataka. I takođe dobiti informacije na
primer, kolika je minimalna i maksimalna vrednost tipa integer na vašem
računaru? Zato pokrenite vaš Terminal i odradite sledeće komande:
manuel@manuel-virtual-machine:~$ sudo apt-get update
manuel@manuel-virtual-machine:~$
sudo apt-get upgrade
manuel@manuel-virtual-machine:~$
clear
manuel@manuel-virtual-machine:~$
cd /opt/lampp
manuel@manuel-virtual-machine:~$
ls
manuel@manuel-virtual-machine:/opt/lampp$
sudo ./manager-linux-x64.run
Kad vam se otvori prozor od XAMPP menadžera, pokrenite Apache Web Server. MySQL Database nam u ovom primeru nije potreban. Zatim, otvorite novi Terminal prozor i prebacite se u folder projekta php_tutorial kojeg smo napravili u prethodnoj lekciji. I otvorite Visual Studio Code.
manuel@manuel-virtual-machine:~$ cd /opt/lampp/htdocs/php_tutorial
manuel@manuel-virtual-machine:/opt/lampp
/htdocs/php_tutorial$ code .
Kliknite na index.php zatim u panel editoru koda prepravite sledeći deo kôda.
<ul>
<li><a href="lessons/lesson01.php">
Lesson 1. - The text printing and comments
</a></li>
<li><a href="lessons/lesson02.php">
Lesson 2.
- Variables and data types
</a></li>
</ul>
U direktorijumu lessons kreirajte novi fajl i nazovite ga lesson02.php. Zatim pokrenite pretraživač i otkucajte localhost/php_tutorial ili dodajte i port na kojem vaš lokalni server radi. Ukoliko je sve pravilno urađeno, dobićete rezultat kao na slici.
Ukoliko je i vaš rezultat isti kao na slici, onda smo spremni da kodiramo kod koji će nam prikazati promenjive, tipove podataka i na kraju kako se definiše konstanta. Otkucajte sledeći kôd u lesson02.php fajlu.
<?php
$title = 'Lesson 2';
require_once '../includes/header.php';
?>
<h2 class="bg-primary text-light
text-center py-3">
Variables and
data types
</h2>
<div class="container">
<?php
echo "<h2>In PHP,
the following data types exist:</h2><br/>";
echo " Bool
(boolean) <br>
Integer (int) <br>
Float (float, double) <br>
String (string) <br>
Array (array) <br>
Object (object) <br>
Resource (resource) <br>
Null (null) <br><br/>";
// This bool type of
variable can be true or false
$boolVariable = true;
echo "boolean ... True or
False <br>";
echo gettype($boolVariable) . "<br></br>";
// This integer type of
variable can store whole numbers
$intVariable = 123456789;
echo " integer... " . $intVariable . "<br>";
echo gettype($intVariable) . "<br>";
echo "Maximal value of an
integer: " .
PHP_INT_MAX . "<br>";
echo "Minimal value of an
integer: " . PHP_INT_MIN
. "<br></br>";
// This
float type of variable can store double numbers
$floatVariable = 1.23456789;
echo "float -> double
... " . $floatVariable . "<br>";
echo gettype($floatVariable) . "<br>";
echo "Maximal value of a
double: " .
PHP_FLOAT_MAX . "<br>";
echo "Minimal value of a
double: " . PHP_FLOAT_MIN
. "<br></br>";
// This
string type of variable can store text
$stringVariable = "A string data type
in PHP can have 128 or 500 or more MB,<br>
but it dependents from
the server configuration and its memory!";
echo " string ... " . $stringVariable . "<br>";
echo gettype($stringVariable) . "<br></br>";
// This array type of
variable can store multiple values
$arrayVariable = array(1, "two", 3.0, true);
echo " array ... " . implode(", ", $arrayVariable) . "<br>";
echo gettype($arrayVariable) . "<br></br>";
// This object type of
variable can hold any type of value
$objectVariable = "An object can hold
any type.";
echo "object -> string
... " . $objectVariable . "<br>";
echo gettype($objectVariable) . "<br>";
echo "Make the object...
<br>";
class SomeClass { } // make a class
$objectVariable = new SomeClass(); // make an object from the
class
echo gettype($objectVariable) . "<br></br>";
// This resource type of
variable used to represent external resources
echo "The resource data
type in PHP is used to represent external resources <br>
such as open files, databases, or network
connections. <br><br/>";
// This null type of
variable has no value
$nullVariable = null;
echo "null ... " . var_export($nullVariable, true) . "<br>";
echo gettype($nullVariable) . "<br></br>";
// a constant
define("PI", 3.14159265359);
echo " You cannot change
constant value after initialization. <br>
Constant PI = " . PI . " always.";
echo "</br></br></br></br></br>"
?>
</div>
<!-- footer -->
<?php require_once '../includes/footer.php'; ?>
Otvorite pretraživač i na stranici sadržaj kliknite na Lesson 2. - Variables and data types. Otvoriće vam se nova veb stranica sa sledećim sadržajem:
In PHP, the following
data types exist:
Bool (boolean)
Integer (int)
Float (float, double)
String (string)
Array (array)
Object (object)
Resource (resource)
Null (null)
boolean ... True or False
boolean
integer... 123456789
integer
Maximal value of an integer: 9223372036854775807
Minimal value of an integer:
-9223372036854775808
float -> double ... 1.23456789
double
Maximal value of a double: 1.7976931348623E+308
Minimal value of a double: 2.2250738585072E-308
string ... A string data type in PHP can have
128 or 500 or more MB,
but it dependents from the server configuration
and its memory!
string
array ... 1, two, 3, 1
array
object -> string ... An object can hold any
type.
string
Make the object...
object
The resource data type in PHP is used to
represent external resources
such as open files, databases, or network
connections.
null ... NULL
NULL
You cannot change constant value after
initialization.
Constant PI = 3.14159265359 always.
Kao što vidite u rezultatima maksimalna veličina integer tipa podataka je čak 9 223 372 036 854 775 807. Ovaj rezultat neće biti isti kod svakog. On zavisi od toga kako je konfigurisan vaš server i od toga koliko server hardverski ima kapaciteta da pruži memorije na raspolaganje. S obzirom koristimo lokalni server više se misli na kapacitet vašeg računara koji isto tako može da varira ako koristite 32-bit-ni operativni sistem. U tom slučaju maksimalna veličina će definitivno biti manja. Kad je u pitanju tip podataka float, dobro obratite pažnju; posebno kad su u pitanju veći proračuni, preciznost i zaokruživanje brojeva. Takve proračune morate da testirate i proverite više puta jer na primer rezultat 1.6 ne mora da znači da je to zaista 1.6. Konstante se u PHP programskom jeziku ne deklarišu već definišu uz upotrebu funkcije define. Jedno je sigurno, ne možete konstanti menjati vrednost u toku izvršavanja kao što to možete na primer u Python programskom jeziku, s obzirom da Python programski jezik nema konstante već koristi promenjive i za konstante. Samo zato što se konstante inače pišu velikim slovima, daje se do znanja ostalim programerima u Python programskom jeziku da ne menjaju vrednost promenjivoj. U PHP vi ne možete promeniti vrednost konstante, ali se takođe preporučuje da koristite velika slova i donju crticu _ u nazivu konstante ako je to baš neophodno. Kako ova veb PHP stranica izgleda i kako se kreirala možete pogledati i u video-u.
Nema komentara:
Objavi komentar