Heim  >  Artikel  >  Backend-Entwicklung  >  [PHP] Probleme bei der Referenzzuweisung in der foreach-Schleife

[PHP] Probleme bei der Referenzzuweisung in der foreach-Schleife

little bottle
little bottlenach vorne
2019-04-17 13:20:313261Durchsuche

foreach($arr as &$value)
1. Das Referenzzuweisungssymbol & wandelt das aktuelle Element bei jeder Schleife in eine Adresse um. Die Variable $value ist die Adresse des entsprechenden Elements In der Schleife ist $value eine Adresse, die auf das letzte Element zeigt
2. Wenn ich das nächste Mal eine Schleife verwende und diese Methode foreach($arr as $value) verwende, wird es ein Problem geben, wenn foreach jedes Element dem nachfolgenden Element zuordnet $value-Variable
3. Daher lautet die Logik: Ändern Sie jedes Element auf das letzte Element des ursprünglichen Arrays, und die letzte Schleife ist immer das Ergebnis der vorherigen
4 Als Referenz verwenden Sie diese Form $arr[$key] Ändern Sie das ursprüngliche Array oder ändern Sie den Variablennamen in der nächsten Schleife


$nums=array(1,2,3);
foreach($nums as &$v){
        var_dump($v);
}
/*
int(1)
int(2)
int(3)
*/
var_dump($nums);
/*
array(3) {
  [0]=>
  int(1)
  [1]=>
  int(2)
  [2]=>
  &int(3)
}
*/
foreach($nums as $v){
        var_dump($v);
}
/*
int(1)
int(2)
int(2)
*/

[Verwandte Tutorials: PHP Video-Tutorial] 

Das obige ist der detaillierte Inhalt von[PHP] Probleme bei der Referenzzuweisung in der foreach-Schleife. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:cnblogs.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen