Funcţie simplă
O funcţie simplă poate fi de forma următoare:
1 2 3 4 5 6 |
<?php FUNCTION nume_fc(){ echo "Test funcţie"; // evident, poate fi orice alt script } nume_fc(); // va afişa, desigur, «Test funcţie» ?> |
Dacă este necesar a folosi parametri, putem folosi următoarele trei şabloane
Funcţie cu un parametru
1 2 3 4 5 6 |
<?php FUNCTION nume_fc_1_param($variab) { echo "Variabila are valoarea $variab<br>"; } nume_fc_1_param(100); // Va fi afişat: «Variabila are valoarea 100» ?> |
Funcţie cu doi parametri
1 2 3 4 5 6 7 |
<?php FUNCTION nume_fc_2_param($x, $y) { $suma = $x + $y; echo "Suma lui $x cu $y = $suma<br>"; } nume_fc_2_param(100, 200); // afiseaza «Suma lui 100 cu 200 = 300» ?> |
Funcţie cu parametru facultativ
Dacă dorim ca funcţia să nu depindă obligatoriu de un anumit parametru, se poate folosi o astfel de modalitate.
1 2 3 4 5 6 7 |
<?php FUNCTION param_lipsa($variab1, $variab2=NULL) { echo "Vorbim despre ".trim($variab1." ".$variab2).".<br>"; } param_lipsa("Cluj", "Napoca"); // afişează «Vorbim despre Cluj Napoca.» param_lipsa("Cluj"); // afişează «Vorbim despre Cluj.» ?> |
Funcţie cu parametru implicit
1 2 3 4 5 6 7 |
<?php FUNCTION param_implic($pers,$apelativ="dna."){ echo "Persoana: $apelativ $pers<br/>"; } param_implic("Doina"); // afişează «Persoana: dna. Doina» param_implic("Costel","dnul."); // afişează «Persoana: dnul. Costel» ?> |
Funcţie cu număr variabil de argumente.
Este recomandabilă în cazul utilizării operaţiunilor matematice
1 2 3 4 5 6 7 8 9 10 |
<?php FUNCTION adunare(...$numere) { $suma = 0; FOREACH ($numere AS $nr) { $suma += $nr; } RETURN $suma; } echo adunare(1, 2, 3, 4, 5); // afişează 15 ?> |
Funcţie recursivă.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
<?php FUNCTION fc_recursiva($nr) { IF($nr<=5){ ECHO "$nr <br?-->"; fc_recursiva($nr+1); } } fc_recursiva(0); /* Afiseaza 0 1 2 3 4 5 */ ?> |
Identificarea existenţei unui fişier pe server
Utilizarea simplă a funcţiei file_exists() (după cum e tratat şi în acest articol) sau is_file(), poate rateuri in functie de gradul de permisiune in citirea unui folder, dar şi a faptului că rezultatul este stocat în memoria cache.
1 2 3 4 5 6 7 8 9 10 11 12 13 |
function e_fisier($file) { clearstatcache(); $fis = pathinfo($file, PATHINFO_EXTENSION); IF (strlen($fis) > 0 && file_exists($file)) { return true; } ELSE { return false; } } |
După cum poate fi intuit, rolul funcţiei clearstatcache() este de a goli memoria cache.
Afişarea dimensiunii unui fişier
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
FUNCTION fc_dimens($cale, $fisier) { $nume_fis= $cale.$fisier; $dimens= filesize($nume_fis); SWITCH (true) { CASE $dimens < 1024: return '<span style="background:lightyellow;">Fişier eronat! <span style="color:red;">Necesită reîncărcare</span>.'; BREAK; CASE $dimens < 1024: return $dimens. ' b'; BREAK; CASE $dimens < (1024*1024): return ROUND($dimens/(1024),2) . ' Kb'; BREAK; CASE $dimens < (1024*1024*1024): return ROUND($dimens/(1024*1024),2) . ' Mb'; BREAK; DEFAULT: return ROUND($dimens/(1024*1024*1024),2) . ' Gb'; BREAK; } } |
Prevenire injecţii pentru înregistrări preluate din formular
1 2 3 4 5 6 7 8 |
FUNCTION fc_prev_inj($con, $contin) { $contin = trim($contin); $contin = stripslashes($contin); $contin = htmlspecialchars($contin); $contin = mysqli_real_escape_string($con, $contin); return $contin; } |
1 2 3 4 5 6 7 8 9 |
FUNCTION fc_prev_inj($contin) { Global $con; $contin = trim($contin); $contin = stripslashes($contin); $contin = htmlspecialchars($contin); $contin = mysqli_real_escape_string($con, $contin); return $contin; } |
Funcţii DATETIME
Câteva variante de realizare a funcţiilor de manipulare DATETIME puteţi găsi la linkul acesta.
Înlocuire caractere speciale (diacritice) – util pentru creare de linkuri
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
$diacritice = array( 'Ă'=>'A', 'À'=>'A', 'Á'=>'A', 'Â'=>'A', 'Ã'=>'A', 'Ä'=>'A', 'Å'=>'A', 'Æ'=>'AE' , 'ă'=>'a', 'à'=>'a', 'á'=>'a', 'â'=>'a', 'ã'=>'a', 'ä'=>'a', 'å'=>'a', 'æ'=>'ae' , 'Þ'=>'B', 'þ'=>'b' , 'Ç'=>'C', 'Č'=>'C', 'ç'=>'c', 'č'=>'c' , 'Ð'=>'Dj', 'ð'=>'dj' , 'È'=>'E', 'É'=>'E', 'Ê'=>'E', 'Ë'=>'E' , 'è'=>'e', 'é'=>'e', 'ê'=>'e', 'ë'=>'e' , 'Ƒ'=>'F', 'ƒ'=>'f' , 'Ì'=>'I', 'Í'=>'I', 'Î'=>'I', 'Ï'=>'I' , 'ì'=>'i', 'í'=>'i', 'î'=>'i', 'ï'=>'i' , 'Ñ'=>'N', 'Ń'=>'N', 'ñ'=>'n', 'ń'=>'n' , 'Ò'=>'O', 'Ó'=>'O', 'Ô'=>'O', 'Õ'=>'O', 'Ö'=>'O', 'Ø'=>'O', 'Œ'=>'OE' , 'ò'=>'o', 'ó'=>'o', 'ô'=>'o', 'õ'=>'o', 'ö'=>'o', 'ø'=>'o', 'œ'=>'oe' , 'Š'=>'S', 'Ş'=>'S', 'Ș'=>'S', 'ẞ'=>'SS' , 'š'=>'s', 'ş'=>'s', 'ș'=>'s', 'ß'=>'ss' , 'Ţ'=>'t', 'Ț'=>'t', 'ţ'=>'t',' ț'=>'t' , 'Ù'=>'U', 'Ú'=>'U', 'Û'=>'U', 'Ü'=>'U' , 'ù'=>'u', 'ú'=>'u', 'û'=>'u', 'ü'=>'u' , 'Ý'=>'Y', 'Ÿ'=>'Y', 'ý'=>'y', 'ÿ'=>'y' , 'Ž'=>'Z', 'ž'=>'z' ); function fc_creare_url ($camp_tinta = '') { GLOBAL $diacritice; $diacritics = $diacritice; $camp_tinta=strtr($camp_tinta, $diacritics ); $camp_tinta = preg_replace('/[^\\pL\d_]+/u', '_', $camp_tinta); $camp_tinta = trim($camp_tinta, "-"); $camp_tinta = iconv("utf-8", "us-ascii//TRANSLIT", $camp_tinta); $camp_tinta = strtolower($camp_tinta); $camp_tinta = preg_replace('/[^-a-z0-9_]+/', '', $camp_tinta); return $camp_tinta; } |
Exemplu
1 2 3 |
Exemplu echo fc_creare_url('Test creare URL-Ă ă Î î Ş ş;Ţ.ţ Â â'); // rezultat: test_creare_url_a_a_i_i_s_s_t_t_a_a |
- Sursa: JavaTpoint.com
- Sursa: JavaTpoint.com