2017. szeptember 26., kedd

Szemöldökráncolás és PHP I.

Változók hatásköre

Van pár programozási nyelv, amellyel foglalkoztam és vannak titkos kedvencek is, de van hogy az embernek olyan programozási nyelvvel kell foglalkoznia, amely nem a szíve csücske, de attól még munkája során megkerülhetetlen. A legjobb tanulás, ha az ember másoknak magyarázza el az "AHA" élményeit. Tehát ez a kis sorozat amolyan személyes kis jegyzet, amely segít rögzíteni a friss élményeket.

Az alábbi kód a következő hibát dobja Notice: Undefined variable..., ami a nem túl kellemes frusztráció élményét okozza, ha az ember a python LEGB változó hatáskörének szabályain nőtt fel...

$myGlobal = 1;

function printGlobal()
{
    echo $myGlobal;
}

printGlobal();

Természetesen a PHP javára kell írni, hogy ezzel a húzással egyértelművé teszi hogy egy a függvényen belüli lokális változóval dolgozunk, vagy pedig egy globális változóval...

$myGlobal = 1;

function printGlobal()
{
    global $myGlobal;
    echo $myGlobal;
}

printGlobal();