Esempio n. 1
0
    var_dump(isset($GLOBALS['gl']));
}
g2();
var_dump(isset($gl));
// no longer set
echo "---------- unsetting inside a function (pass-by-ref) ------------\n";
function g3($p1, &$p2)
{
    var_dump(isset($p1, $p2));
    unset($p1, $p2);
    // unsets local "version" in current scope
    var_dump(isset($p1, $p2));
}
$v1 = 10;
$v2 = 20;
g3($v1, $v2);
var_dump(isset($v1));
// still set
var_dump($v1);
var_dump(isset($v2));
// still set, even though passed in by reference and unset
var_dump($v2);
echo "---------- unsetting inside a function (static) ------------\n";
function g4()
{
    static $count = 0;
    ++$count;
    echo "count = {$count}\n";
    var_dump(isset($count));
    unset($count);
    // unsets local "version" in current scope
Esempio n. 2
0
function circle($x, $y, $r, $z)
{
    g0(_, _, SAFE_Z);
    g0($x, $y + $r, _);
    if (!is_array($z)) {
        $z = array($z);
    }
    foreach ($z as $zz) {
        g1(_, _, $zz);
        g3($x - $r, $y, _, 0, -$r, _);
        g3($x, $y - $r, _, $r, 0, _);
        g3($x + $r, $y, _, 0, $r, _);
        g3($x, $y + $r, _, -$r, 0, _);
    }
    g0(_, _, SAFE_Z);
}
Esempio n. 3
0
<?php

function g3()
{
    $arr2 = array(0, 1, 2, 3);
    $arr = $arr2;
    $b = true;
    $b2 = true;
    foreach ($arr as &$v) {
        (yield null);
        echo "val={$v}\n";
        if ($b && $v == 1) {
            $b = false;
            $arr = array(4, 5, 6, 7);
        } else {
            if ($b2 && $v == 6) {
                $b2 = false;
                $arr = $arr2;
            }
        }
    }
}
foreach (g3() as $_) {
}
Esempio n. 4
0
<?php

function g3()
{
    $arr2 = array(0, 1, 2, 3);
    $arr = $arr2;
    $b = true;
    $b2 = true;
    foreach ($arr as &$v) {
        echo "val={$v}\n";
        if ($b && $v == 1) {
            $b = false;
            $arr = array(4, 5, 6, 7);
        } else {
            if ($b2 && $v == 6) {
                $b2 = false;
                $arr = $arr2;
            }
        }
    }
}
g3();