Initiere in PHP – Partea I

iNoob | Stefanescu Mihai | 2020-10-11

In acest articol vreau sa va fac cunoscuti primii pasi in PHP. Deoarece subiectul este foarte vast si n-am sa reusesc sa cuprind tot ce trebuie intr-un singur articol am sa ma limitez la cateva chestii de baza de care aveti nevoie pentru inceput si am sa incerc sa folosesc cat mai multe exemple.
Dupa cum bine stiti deja codul php este delimitat de tag-urile <?php si ?>, de exemplu:

<?php
   echo "Acesta este primul fisier php facut de mine";
?>

acest cod nu face altceva decat sa afiseze mesajul “Acesta este primul fisier php facut de mine”, Deja ati inteles ce face acest echo, afiseaza un mesaj, dar mare atentie la ghilimele pentru ca daca folositi ghilimele in ghilimele in ghilimele s.a.m.d este posibil sa dati de cateva errori.

Sa luam exemplul urmator:

<?php
   echo "<a href='link.php'>link</a>";
?>

Acest exemplu este corect pentru ca la echo am folosit ” iar la link ‘, astfel incat acestea nu vor fi incurcate de server-ul web instalat pe computerul meu.
Acum un exemplu gresit de folosire al ghilimelelor:

<?php
   echo "<a href="link.php'>link</a>";
?>

Acest cod este complet gresit, am deschis campul de mesaj cu ‘ si am inchis cu “.
Acum, alt mod de a gresi cand scrieti este urmatorul:

<?php
echo “Aceasta este primul fisier php facut de mine si <a href=”pagina_mea.php”>aceasta</a> este adresa ei.”;
?>

Ok, sperand ca ati inteles cum functioneaza functia echo si cum sa folositi ghilimelele am sa trec mai departe. Dar nu inainte sa va mai arat ceva, mai exact comentariul:
pentru a lasa un mesaj in codul sursa (ce nu va fi afisat in browser) puteti folosi // in felul urmator:

<?php
//un comentariu pe o linie
?>

sau putem folosi /* pentru comentariul pe mai multe randuri in felul urmator:

<?php
/*comentariu pe 
2 sau mai multe linii*/
?>

Variabilele

O variabila este o zona de memorie denumita intr-un anumit fel astfel incat sa poata fi folosita mai tarziu.
Sa incep direct cu un exemplu:

$autor = "continutul variabilei";

Dupa cum se observa am denumit o variabila autor (variabilele incep intotdeauna cu semnul $ urmat de numele ales de voi).

Dupa cum ati observat deja, si in cazul variabilelor am folosit ghilimele, si cum deja v-ati dat seama regulile de folosire sunt aceleasi ca la echo.

Si inca un lucru din aceasta categorie, concatenare nu se poate realiza decat cu ” . $variabila . ” ci si cu {$variabila}.

Constantele

Precum si variabilele, constantele sunt zone de memorie in care sunt stocate anumite informatii, doar ca in cazul acestora raman exact cum au fost definite, nu isi mai schimba valoarea sub nicio forma.
Un alt lucru important este acela ca in cazul constantelor nu mai avem acel $ in fata numelui, hai ca va voi arata printr-un exemplu:

define('NUME', 'continut);

Variabile predefinite
$GLOBALS – pot fi accesate toate gariabilele globale
$_SERVER – contine o serie de variabile cu valori setate de serverul web.
$_GET si $_POST – contine variabile primite de la scriptul php printr-un formular de exemplu
$_COOKIE – contine valori referitoare la cookie-uri (pastrate in browserul utilizatorului)
$_FILES – contine variabileprimite de la script prin intermediul incarcarii de fisiere prin metoda POST
$_SESSION – contine variabile ce corespund sessiuni curente a scriptului.

Tipuri de Variabile

Cand spun tipuri de variabile ma refer la datele ce sunt introduse in ele. Acestea se impart in 8 tipuri, 4 scalare (boolean, integer, float si string) doua sunt tipuri compuse (array si object) si inca doua sunt tipuri speciale (resource si null).
Ok, sa nu mai lungesc vorba am sa incep sa vorbesc despre ele pe rand.

Tipul boolean

Acest tip de variabila poate avea decat 2 valori, mai exact: ADEVARAT sau FALS
Aceste valori pot fi date prin cuvintele cheie TRUE sau FALSE (nu se face distinctie intre litere mici si mari) sau pot fi folosite valori precum 1 si 0 (a pentru adevarat si 0 pentru fals).

Tipul Integer

O variabila de tip int este de fapt o valoare din multimea numerelor intregi. Aceasta valoare poate fi specificata in baza 10, 16 sau 8 conventia fiind aceasi ca si in C/C++ sau Java.

Tipul Float

O variabila de tip float poate fi specificata fie in forma zecimala fie in forma stiintifica (cu exponent).

Tipul String

O variabila de tip string este de fapt un sir de caractere.

Tipul Array

Acest tip de variabila este speciala pentru vectori (daca ati luat parte la cateva ore de informatica de liceu aveti deja o vaga idee despre ce este vorba), dar spre deosebire de C++ acestia sunt formati din chei, fiecareia atasandui-se o valoare. Acest tip de date este optimizat astfel incat sa poata fi folosit in locul urmatoarelor structuri: liste, tabele de dispersie, dictionare, colectii, stive, cozi, s.a.m.d.

Am sa pun si un exemplu, pentru ca este mai complicat decat la celelalte variabile:

$z = ['ct' => 'string', 12 => true];

Variabila $z reprezinta un vector $z[“ct”] cu valoarea string, iar $z[12] are valoarea TRUE.

Tipul resource

Variabilele de tip resource sunt folosite pentru pastrarea unor referinte catre anumite resurse externe cum ar fi conexiuni la baze de date, fisiere, s.a.m.d.

Tipul NULL
Aceasta valoare este atribuita oricarei variabile ce nu a fost initializata.
Se considera a fi variabila de tip NULL o variabila careia i s-a tribuit constanta NULL, nu a fost initializata sau a fost dezinitializata (lucru ce se poate face cu functia unset()).
Siruri de caractere speciale
Spre deosebire de intregi si de numere duble care contin cifre, sirurile pot contine orice caracter.
Deci, sirurile sunt utile in cazul in care vreti sa stocati datele care nu pot fi calculate (adrese, nume, etc). Dar sa nu intelegeti ca in acestea nu pot fi stocate si date numerice.
PHP faciliteaza includerea in siruri a unor caractere speciale:

\n – salt la linie noua
\r – retur de car
\t – caracter de tabulare pe orizontala
\\ – backslash
\$ – simbolul dolarului
\” – ghilimele duble

Pentru a nu lungi acest articol extrem de mult (de parca nu este deja foarte lung) ma voi opri aici. Am sa postez in curand (cand va fi gata) partea a doua a tutorialului in care voi atinge urmatoarele subiecte: Clase si Obiecte, Constructori, Operatori, Serializarea Obiectelor, Utilizarea referintelor, Referinte Globale, Referinte $this, Operatori PHP (logici, de comparatie, tertieri) si cam atat, lasand cateva chestii si pentru a treiaparte.


Imi place ce faci aici
Daca iti place ce fac aici imi poti cumpara o cafea Buy Me a Coffee at ko-fi.com

Stefanescu Mihai
Programator de ~8 ani, am lucrat la proiecte din mai multe industrstrii, de la eCommerce la telecomunicatii la automatizari. In acest timp am folosi diferite tehnologii, de la PHP, MySQL, PostgreSql, RabbitMq, Redis, Memcached si altele.
       

Get in touch
Pentru nelamuriri, dubii, comentarii si chestii de pe suflet ne putem auzi pe Discord, Reddit sau poti deschide o discutie noua pe forum.

Posteaza un comentariu

Comentarii

Inca nu au fost postate comentarii, fii primul care posteaza un comentariu!

Club-ul este dedicat membrilor si ofera access la mai multe zone ale website-ului.

🗝ïļ Login 🌟 Register

🔖 Bookmarks ⊞
âœĻ Pentru a sustine aceasta comunitate am sa te rog sa te autentifici sau sa te inregistrezi!

🌊ïļ Discord ⊞

Folosim cookie-uri pentru a oferi functionalitatile critice ale aplicatiei Invata-Programare. Folosim cookie-uri si pentru a analiza traficul, pentru care e nevoie de consimtamantul dvs. explicit.

⮆ïļ