Heim  >  Artikel  >  Backend-Entwicklung  >  Detaillierte Erläuterung des PHP{}-Blockebenenbereichs

Detaillierte Erläuterung des PHP{}-Blockebenenbereichs

小云云
小云云Original
2018-03-10 09:13:152590Durchsuche

Dieser Artikel teilt Ihnen hauptsächlich den Bereich {} und && oder || mit. Ich hoffe, er kann allen helfen.

und && oder ||. Prioritätsproblem:

und oder hat eine niedrigere Priorität als && ||.
Also $b1 = $bA and $bB wirkt zuerst auf $b1 = $bA.

$bA = true;$bB = false;$b1 = $bA and $bB;$b2 = $bA && $bB;
var_dump($b1); // $b1 = truevar_dump($b2); // $b2 = false$bA = false;$bB = true;$b3 = $bA or $bB;$b4 = $bA || $bB;
var_dump($b3); // $b3 = falsevar_dump($b4); // $b4 = true

{}Geltungsbereich auf Blockebene:

In PHP kann der interne Wert außerhalb von {} abgerufen werden. PHP hat einen Funktionsumfang, aber keinen Blockumfang.

if(1){    $a = 123;
}
print_r($a);  // $a = 123;
for ($i = 0; $i < 10; $i++) {    for ($j = 0; $j < 10; $j++) {        $k = 777;
    }
}
var_dump($j);//输出10var_dump($k);//输出777
$arr = [1, 2, 4];foreach ($arr as &$val) {    $val  *= 2;
}$val = [];//重新赋值$val[0]=9;$val[1]=10;
var_dump($arr,$val);

输出:array(3) {
  [0]=>
  int(2)
  [1]=>
  int(4)
  [2]=>
  &array(2) {
    [0]=>
    int(9)
    [1]=>
    int(10)
  }
}array(2) {
  [0]=>
  int(9)
  [1]=>
  int(10)
}

Wegen $arr as &$val, Schleife zum dritten Element,

Wert. Obwohl es einem leeren Array neu zugewiesen wird, wirken sich nachfolgende Änderungen weiterhin auf

val aus, und nachfolgende Änderungen wirken sich darauf aus, es sei denn unset($val) wird hinzugefügt.

Verwandte Empfehlungen:

Bereich und Bereich auf Blockebene in Javascript

Ist PHP Funktionsbereich oder Bereich auf Blockebene?

Anonyme JavaScript-Funktion, die Scope_Javascript-Fähigkeiten auf Blockebene imitiert

Das obige ist der detaillierte Inhalt vonDetaillierte Erläuterung des PHP{}-Blockebenenbereichs. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn