Autor Zpráva
Greeg
Profil
ak potrebujem do funkcie poslať pole, je efektívnejšie ho globalizovať, alebo poslať cez parameter jeho ukazovateľ?
Greeg
Profil
tak teda aby sa vedelo o čom točim:
$mojePole = array();

//cez ukazatel
function fnc1(&$mojePole) {
  ...
}

// globalne
function fnc2() {
  global $mojePole;
  ...
}


čo z toho spapa menej cpu/pamete?
karbon
Profil *
Pokud to nebudou data v řádu MiB, tak se podle mě nemá cenu nad tímto zamýšlet.
bukaj
Profil
Greeg
Nezabývej se tím, PHP je dosti inteligentní na to, aby pole při předávání do funkce nekopírovalo. Nepoužíval bych ani jedno, ani druhé. Při předávání parametru se hodnotě pouze zvýší její reference count. A v tabulce symbolů přibyde odkaz na tuto hdonotu.

Třeba na latríně je to jakžtakž popsané.
Greeg
Profil
bukaj
laTrine som v celku pochopil a kedže moja fnc okrem výpisu s tým poľom nič iné nerobí, malo by to byť košer ako vianoce.
no nepochopil som tvojmu Nepoužíval bych ani jedno, ani druhé.
bukaj
Profil
Greeg
no nepochopil som tvojmu Nepoužíval bych ani jedno, ani druhé.
Že bych v tomto případě nepoužíval reference, ani globální proměnné. Pokud opravdu nepotřebuješ v poli něco měnit tak, aby to bylo dostupné i po skončení vykonávání těla fce, použití referencí je zbytečné. A globální proměnné a zglobalizovávání proměnných ve fcích jsou prostě fůj :o)
Greeg
Profil
:D jaj sry, nechapal som ako inak si predstavuješ predanie toho poľa do fnc a potom mi konečne došlo, že toto nie je (fuj) Cčko :)

Vaše odpověď

Mohlo by se hodit


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm:

0