Category Archives: Uncategorized

Cum se poate modifica fiecare element dintr-un array?

Probabil majoritatea dintre voi si-a dorit sa modifice fiecare element dintr-un array cu un singur “sut”.
De exemplu avem o lista cu utilizatori salvata intr-un array:

Ex: Se cere sa se transforme fiecare nume de utilizator in majuscule.

Varianta1 clasica, probabil asta se invata in liceu / facultate:

<?php

for ($i=0; $i

Varianta2, transformam folosind functia array_map();

Asa ca varianta2 pare mult mai simpla si eleganta. Recomand sa folositi functia array_map() pentru modificarea fiecarui element dintr-un array.

Pentru Functia array_map() am definit primii 2 parametri:
– “strtoupper” : functia ce voi apela
– $utilizatori : array-ul ce doresc sa modific.

Bafta!

7 exemple des folosite cu functia date()

Functia date() este folosita pentru a formata ora / data si are peste 30 de optiuni pentru formatare.

Voi arata exemple cu cele mai folosite formatari.

1. Afiseaza data curenta ZZ-LL-AAAA

<?php

echo date("d-m-Y");

2. Afiseaza ora curenta OO:MM:SS

<?php

echo date("H:i:s")

3. 1+2, adica afiseaza data si ora curenta:

<?php

echo date("d-m-Y H:i:s")

Obs: Dupa cum se vede in functia date se poate folosi un singur sau mai multi parametrii. Ordinea nu conteaza, iar separatoarele "-", ":" se pot inlocui cu altele.

4. Afiseaza ziua din luna curenta cu 2 cifre:

<?php

echo date("d"); //va afisa valori intre 01..31

5. Afiseaza luna din anul curent cu 2 cifre:

<?php

echo date("m");

6. Afiseaza toate informatiile legate de data si ora in format ISO 8601.

<?php

echo date("c");

Obs: Acest format ISO 8601 este folosit in javascript , si cand dorim sa trimitem un parametru de tip data / ora atunci alegem acest format.

7. Afiseaza numele zilei curente (in engleza):

<?php

echo date("N"); // va afisa una dintre variante: Monday… Sunday

Functia time()

Functia time() in php returneaza numarul de secunde trecute de la data de 1 ianuarie 1970 00:00:00 . Probabil multi nu stiu de ce este utila aceasta functie, de ce vreau sa stiu numarul de secunde incepand cu 1 ianuarie 1970.

De exemplu vreau sa afisez data curenta :

1
2
3
4
5
<?php
 
echo date("d-m-Y");
 
?>

Functia date() foloseste functia time() pentru a afisa data curenta. Exemplu de mai sus scris altfel :

1
2
3
4
5
<?php
 
echo date("d-m-Y", time() );
 
?>

Exemplu 3: Vreau sa stiu cat va fi ora peste 3 ore (1 ora = 3600 secunde, 3 ore = 3 * 3600 secunde).

1
2
3
4
5
6
7
8
<?php
 
$acum = time();
$peste_3_ore = $acum + 3*3600;
 
echo date("H:i", $peste_3_ore);
 
?>

Exemplu 4: Vreau sa stiu data pentru saptamana viitoare ( 1 zi = 24 * 1 ora = 24 * 3600 secunde , 1 saptamana = 7 zile = 7 * 24 * 3600 secunde):

1
2
3
4
5
6
7
8
<?php
 
$acum = time();
$saptamana_viitoare = $acum + 7 * 24 * 3600;
 
echo date("d-m-Y", $saptamana_viitoare);
 
?>

Variable globale vs Variabile locale

Cel mai okay este sa va demonstrezi prin exemplu diferenta intre variabile globale si variabile locale.

Ex1:

Obs: Functia a() nu va afisa nimic deorece $a este variabila global aici: $a = 3; iar in interiorul functiei ne referim la o variabila locala cu acelasi nume.

Ex2:

Obs: Se va afisa: 3 , pentru ca in interiorul functiei am definit scopul variabilei $a (variabile globala).

Regula celor 3 pahare in programare

Aceasta regula este cunoscuta de toata lumea, cand ai un pahar cu vin si un alt pahar cu apa. Dorim ca in paharul cu vin sa avem apa, si in paharul cu apa sa avem vin. Solutia este un alt treilea pahar. In acel pahar turnam vinul, primul pahar este gol asa ca aici punem continutul din paharul cu apa, si in fostul pahar cu apa turnam vinul.

In programare folosim aceasta regula cand vrem sa schimbam valorile intre 2 variabile . Ex: $a = 3, $b = 5 si vrem ca dupa schimbare sa avem $a = 5, $b = 3;

Exemplu:

<?php

//valorile initiale

$a = 3;
$b = 5;

echo "Valori initiale
“;
echo “a = $a”;
echo “b = $b”;

// Aplicam regula celor 3 pahare
$c = $a;
$a = $b;
$b = $c;

echo “Valori dupa schimbare
“;
echo “a = $a”;
echo “b = $b”;

?>

Bafta!

CSS: Proprietate Z-index

Cu z-index se poate defini ordinea elementelor HTML. In multe cazuri ai mai multe elemente suprapuse, si pentru a defini ordinea folosim z-index.

Ex: Salveaza urmatorul fisier in zindex1.html. Am create 4 div-uri cu diferite culoare de fundal . Elementul cu z-index mai mare(culoare fundal rosie) va fi vizibila pe ecran.

 

 

 

Ex2: Daca in fisierul de mai sus la primul div punem z-index:5 atunci galbenul va fi ca si culoare fundal.

Afiseaza toata zilele intr-un interval de data

Azi am avut un task foarte interesant, mi s-a cerut sa afisez toate zilele intr-un interval de data.

Exemplu: Afiseaza toate zilele intre 31.08.2011 – 04.09.2011

Rezolvare:

<?php

$data_inceput = '2011-08-31';
$data_sfarsit = '2011-08-31';

//Convertimp datele in timestamp
$data_inceput_ts = strtotime($data_inceput);
$data_sfarsit_ts = strtotime($data_sfarsit);
$toate_zilele = array();

for ($data_curenta_ts = $data_inceput_ts; $data_curenta_ts <=$data_sfarsit_ts; $data_curenta_ts += 60*60*24) {
$toate_zilele[] = date("d-m-Y", $data_curenta_ts);

}

//afisam zilele
echo '

';
var_dump($toate_zilele);
echo '

‘;

?>

Salveaza acest fisier cu numele zile.php si ruleaza din browser. Va afisa:

array (5) {
0 => ‘31.08.2011’
1 => ‘01.09.2011’
2 => ‘02.09.2011’
3 => ‘03.09.2011’
4 => ‘04.09.2011’
5 => ‘05.09.2011’
}

Pentru intrebari ne poti gasi si pe facebook, adresa: http://www.facebook.com/pages/Tutoriale-PHP/112234078873669

Bafta!

Functia str_replace()

De multe ori ne lovim de problema de a inlocui una sau mai multe caractere intr-un text. Pentru acest lucru avem functia str_replace().

Functia str_replace() are 3 parametri: 1. caracterele de inlocuit, 2. caracterele noi, 3. textul meu.

Exemplu 1: Salveaza urmatorul cod intr-un fisier cu numele replace.php:

Exemplu 2: Dorim sa avem url-uri prietenoase pentru siteul nostru, pentru asta vom folosi din nou functia str_replace().

Bafta!

Functia array_combine()

Functia array_combine() creeaza un array nou si are 2 parametri:

– $array1, valorile acestui array va forma cheia noului array
– $array2, valorile acestui array va forma valoare noului array

Ex:

Unde este utila acesta functie?
Aceasta functie este utila cand vrem sa cream un dropdown pentru selectarea anul nasterii.

Salveaza urmatorul cod intr-un fisier cu numele anul_nasterii.php

<?php

$years = range(1950,2012);
$array_year = array_combine($years, $years); //cheia si valoarea trebuie sa fie identica

//afisam eticheta HTML
echo “”;

//afisam anii
foreach ($array_year as $key=>$value) {

//afisam eticheta pt fiecare an
echo “$value”;
}

//inchidem eticheta HTML
echo “”;

?>

Probabil ai observat ca apare o noua functie in exemplul de mai sus, mai exact functia range();

Functia range($de_la, $pana_la) afiseaza toate valorile intregi intre variabila $de_la pana la variabile $pana_la.