&$v){if($k===angegebenes Feld". Wert){$v=Wert ersetzen;}}"."/> &$v){if($k===angegebenes Feld". Wert){$v=Wert ersetzen;}}".">
Heim >Backend-Entwicklung >PHP-Problem >So durchlaufen und ersetzen Sie den Wert eines bestimmten Felds (Schlüsselname) in einem PHP-Array
Traversal-Ersetzungsschritte: 1. Verwenden Sie die foreach-Anweisung, um das Array zu durchlaufen, indem Sie auf die Schleife verweisen. Die Syntax lautet „foreach($arr as $k=>&$v){//Loop Body Statement Block;}“; 2. Verwenden Sie in der Schleife im Hauptteil den Operator „===", um das Element des angegebenen Felds zu finden und den Wert neu zuzuweisen, die Syntax „foreach($arr as $k=>&$v){if( $k===angegebener Feldwert){ $v=Ersatzwert;}}".
Die Betriebsumgebung dieses Tutorials: Windows 7-System, PHP-Version 8.1, DELL G3-Computer
Im PHP-Array können Sie die foreach-Anweisung verwenden, um den Wert eines bestimmten Felds (Schlüsselname) zu durchlaufen und zu ersetzen ).
Implementierungsschritte:
Schritt 1: Verwenden Sie die foreach-Anweisung, um das Array durch eine Referenzschleife zu durchlaufen.
foreach ($array as $key => &$value){ //循环体语句块; }
Durchlaufen Sie das angegebene $array-Array und weisen Sie in jeder Schleife den Wert des aktuellen Arrays $value zu , der Schlüsselname wird $key zugewiesen.
Wenn Sie die foreach-Anweisung zum Durchlaufen eines Arrays verwenden, wirkt sie sich im Allgemeinen auf die Sicherung des Arrays aus und hat im Allgemeinen keine Auswirkungen auf das Array selbst.
Wenn Sie das Array über eine Schleife ändern möchten, können Sie eine Referenzschleife verwenden (in
$value
之前加上&
, sodass die foreach-Anweisung einen Wert per Referenz zuweist, anstatt einen Wert zu kopieren), und dann das Array innerhalb des Schleifenkörpers bearbeiten wirkt sich auf das Array selbst aus.
Schritt 2: Verwenden Sie im Schleifenkörper den Operator „===", um das angegebene Feld zu finden und den Wert neu zuzuweisen
if($key===指定字段){ $value=新值; }
Vollständiger Beispielcode:
<?php header(&#39;content-type:text/html;charset=utf-8&#39;); function f($arr,$s,$r){ foreach($arr as $k=>&$v){ if($k===$s){ $v=$r; } } echo "字段 $s 的值替换为 $r"; var_dump($arr); } $arr=array("a"=>"red","b"=>"green","c"=>"blue","d"=>"yellow"); echo "原数组:"; var_dump($arr); f($arr,"a","aaa"); f($arr,"b","bbb"); f($arr,"c","ccc"); ?>
Wie Sie sehen können, Im letzten Vor dem Element steht ein &, da die $value-Referenz des letzten Elements des Arrays nach der foreach-Schleife weiterhin erhalten bleibt. Wir müssen unset() verwenden, um es zu zerstören.
unset($v); // 最后取消掉引用
Empfohlenes Lernen: „PHP-Video-Tutorial“
Das obige ist der detaillierte Inhalt vonSo durchlaufen und ersetzen Sie den Wert eines bestimmten Felds (Schlüsselname) in einem PHP-Array. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!