Aici gasiti functii PHP ce pot fi folosite in lucrul cu functii create /definite in script.



1.   call_user_func("func", arg)

- Apeleaza functia "func" dandu-i valoarea argumentului "arg". Returneaza rezultatul functiei apelate, sau FALSE.

<?php
function func($arg1, $arg2) {
  return "$arg1 - $arg2";
}

// Apeleaza func()
echo call_user_func("func", 'MarPlo', 'net');       // MarPlo - net


// Sau o metoda mai avansata, prin crearea si apelarea functiei in acelasi timp (PHP 5.3 +)
echo call_user_func(function($arg) { echo "Tutoriale $arg"; }, 'php');       // Tutoriale php
?>

2.   call_user_func_array("func", array_arg)

- Apeleaza o functie ("func") dandu-i valoarea argumentelor dintr-un Array (array_arg). Returneaza rezultatul functiei apelate, sau FALSE.

<?php
// Functie creata standard
function func1($arg1, $arg2) {
  return $arg1 + $arg2;
}

// Functie creata in variabila (PHP 5.3 +)
$func2 = function($arg1, $arg2) {
  return $arg1 * $arg2;
};

// Matricea pt. parametri
$aray_p = array(7, 8);

// Apeleaza func1()
echo call_user_func_array("func1", $aray_p);       // 15


// Apeleaza $func2
echo call_user_func_array($func2, $aray_p);       // 56
?>

3.   create_function("argumente", "cod_functie")

- Creaza dinamic o functie ce va avea argumentele "argumente" si codul ce-l executa "cod_functie". Returneaza functia creata (poate fi asociata cu un nume de variabila), sau FALSE. ("argumente" si "cod_functie" trebuie sa fie siruri)

<?php
$var = create_function('$arg', 'return $arg*2;');
echo $var(8);       // 16
?>

4.   func_num_args()

- Returneaza numarul de argumente primite de o functie. Se foloseste in interiorul acelei functii.

<?php
function test() {
  // Preia si afiseaza numarul de argumente primite
  $nr_args = func_num_args();
  echo "Numar argumente primite: $nr_args";
}

// Apeleaza functia
test(1, 2, 'a');       // Numar argumente primite: 3
?>

5.   func_get_arg(nr)

- Returneaza argumentul cu index-ul "nr" din cele primite de o functie (primul argument are index 0). Se foloseste in interiorul acelei functii. Daca numarul de argumente e mai mic decat "nr", returneaza FALSE.

<?php
function test() {
  // Preia numarul de argumente primite
  $nr_args = func_num_args();

  // Daca nr. argumente e mai mare sau egal cu 2, afiseaza argumentul cu index 2
  if ($nr_args>=2) {
    echo 'Argumentul cu indice 2 e: '. func_get_arg(2);
  }
}

// Apeleaza functia
test(1, 'php', 'marplo.net');       // Argumentul cu indice 2 e: marplo.net
?>

6.   func_get_args()

- Returneaza o matrice cu argumentele primite de o functie. Se foloseste in interiorul acelei functii..

<?php
function test() {
  // Preia argumentele primite
  $array_args = func_get_args();

  // Afiseaza structura matricei cu argumentele
  print_r($array_args);
}

// Apeleaza functia
test(1, 'tutoriale', 'marplo.net');       // Array ( [0] => 1 [1] => tutoriale [2] => marplo.net )
?>

7.   function_exists("function")

- Returneaza TRUE daca functia "function" (numele ei intre ghilimele) exista, altfel, returneaza FALSE.


8.   register_shutdown_function("func", param1, param2, ...)

- Inregisteaza functia "func" sa fie executata la terminarea scriptului (dupa executarea comenzilor din el), sau dupa apelarea lui "exit()". "param1", "param2" sunt optionali si reprezinta parametri ce vor fi transferati la "func".

<?php
function end_script() {
  echo 'Terminare script';
}

// Inregistreaza sa fie executata functia end() la sfarsit de executie a scriptului
register_shutdown_function("end_script");

// Se executa cod oarecare
echo (2+3).' - ';

// Rezultatul functiei va fi afisat ultimul, desi a fost inregistrata pt. executie inaintea echo-ului de sus
// Scriptul va returna: 5 - Terminare script
?>

- O lista mai detaliata cu aceste functii gasiti la pagina oficiala Functii pentru functii

Un Test simplu in fiecare zi

HTML
CSS
JavaScript
PHP-MySQL
Engleza
Spaniola
Care meta tag se foloseste pentru scurta descriere a paginii?
<meta content="..."> <meta description="..."> <meta http-equiv="...">
<meta name="description" content="70-160 caractere ce descriu continutul paginii" />
Ce proprietate CSS opreste efectul dat de "float"?
clear text-align position
#some_id {
  clear: both;
}
Clic pe metoda ce creaza un array cu toate elementele din pagina cu un anumit nume de tag.
getElementsByName() getElementById() getElementsByTagName()
var divs = document.getElementsByTagName("div");
var nr_divs = divs.length;
alert(nr_divs);
Indicati functia PHP ce returneaza numarul de elemente dintr-un array.
is_[) count() strlen()
$arr =[7, 8, "abc", 10);
$nri = count($arr);
echo $nri;        // 4
Indicati adverbul corespunzator adjectivului din paranteza in propozitia: "I live (happy)".
happly happily hapily
I live happily.
- Traiesc fericit (in mod fericit).
Indicati adverbul corespunzator adjectivului din paranteza in propozitia: "Vivo (feliz)".
felizamente felizmente felices
Vivo felizmente.
- Traiesc fericit (cu fericire).
Functii pentru lucru cu functii

Last accessed pages

  1. Alphabet and Pronunciation - Alfabetul si pronuntia in limba engleza (20583)
  2. Coduri pt culori (16815)
  3. Prepozitii A, de sau en (304)
  4. Functii pentru siruri (492)
  5. Prezentul simplu - Exercitii si teste incepatori (12369)

Popular pages this month

  1. Gramatica limbii engleze - Prezentare Generala (2691)
  2. Cursuri si Tutoriale: Engleza, Spaniola, HTML, CSS, Php-Mysql, JavaScript, Ajax (1333)
  3. Prezentul simplu si continuu - Present Tense Simple and Continuous (1050)
  4. Trecutul simplu si continuu - Past Tense Simple and Continuous (758)
  5. Gramatica limbii spaniole. Indrumator si prezentare generala (729)