PHPでforeachに追加およびトラバース中に元の配列を変更する方法

小云云
リリース: 2023-03-20 17:06:01
オリジナル
2101 人が閲覧しました

配列内の特定の値を変更してそれを直接走査したい場合、元の配列は変更されません。

1. 走査時にデータを結合し、そのデータを別の新しい配列に代入します。 array_push() は次のようになります:

$data=array(1,2,3,4);
$newdata=array();
foreach($data as $k=>$v){
    if($v==2)  $v=666;//我们想把值等于2的改为666 这样的话在内部改变了$v但是$data还是没改变
    array_push($newdata,$v);//这样可以得到我们想要的数组
      }
ログイン後にコピー

2. array_push() を使用せずに元の配列を変更できるように、走査された値の前に & 記号を追加できます

$data=array(1,2,3,4);
foreach($data as &$v){
      if($v==2)  $v=666;//因为$v前面加了'&'所以原数组就直接改变了
}
ログイン後にコピー


関連する推奨事項:

PHP での for ループと foreach ループの使用法と違い

PHP が foreach を使用して配列を変換する方法

PHP で配列を走査するために for ループ構造と foreach ループ構造の違いを理解する方法

以上がPHPでforeachに追加およびトラバース中に元の配列を変更する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート