17-06-2010, 01:07
Witam,
ostatnio zaintrygowało mnie jedno pytanie - jak się ma do wydajności argument przekazywany do funkcji?
Powiedzmy sobie, że mam coś takiego:
Funkcja, do której przekazuję w argumencie tablicę. Z tej tablicy potrzebuję jednak tylko id, a więc w sumie lepsze wydaje się to:
No ale czasami zachodzi potrzeba użycia czegoś z tablicy poza tym id... sporadycznie ale jednak.
Jak wygląda porównanie obu tych sposobów pod względem wydajności?
Czy po zwróceniu wartości automatycznie argumenty przekazywane do funkcji są niszczone (lokalnie wewnątrz funkcji), czy ma to jakiś konkretny wpływ na działanie?
ostatnio zaintrygowało mnie jedno pytanie - jak się ma do wydajności argument przekazywany do funkcji?
Powiedzmy sobie, że mam coś takiego:
Kod PHP:
function my_function($arg)
{
$id = $arg['id'];
// Tutaj cos sie dzieje z uzyciem id
}
$arg = array();
// Tu trafiaja do $arg dane, np. z bazy
$var = my_function($arg);
Funkcja, do której przekazuję w argumencie tablicę. Z tej tablicy potrzebuję jednak tylko id, a więc w sumie lepsze wydaje się to:
Kod PHP:
function my_function($arg)
{
// Tutaj cos sie dzieje z uzyciem arg
}
$arg = array();
// Tu trafiaja do $arg dane, np. z bazy
$var = my_function($arg['id']);
No ale czasami zachodzi potrzeba użycia czegoś z tablicy poza tym id... sporadycznie ale jednak.
Jak wygląda porównanie obu tych sposobów pod względem wydajności?
Czy po zwróceniu wartości automatycznie argumenty przekazywane do funkcji są niszczone (lokalnie wewnątrz funkcji), czy ma to jakiś konkretny wpływ na działanie?