ホームページ  >  記事  >  バックエンド開発  >  foreachループ後に残るPHP配列参照の問題を解決する方法

foreachループ後に残るPHP配列参照の問題を解決する方法

不言
不言オリジナル
2018-07-10 16:36:521730ブラウズ

この記事では主に、foreach ループの後に配列を残す PHP の参照問題を紹介します。これには、特定の参照値があります。ここで共有します。必要な友人は参照してください。

eg:


結果:


##説明:

1.foreach はブロックではありませんレベル ドメイン、配列参照が終了、$k、$a はメモリを解放しません

2。最初の参照サイクルが終了すると、$a は配列 4

3 の最後の要素を指します。最初の参照サイクルが終了します 2 回目のループを開始します (この時点で $a はすでに最後の要素を指しており、参照です)

ループを 4 回実行します。配列内の変更は次のとおりです:

1->

[1,2,3,4]

2-> [1,

2,3,4]

3-> [1,2,

3,3] 3 回目の値は最後の要素 3 を指しますが、値は最後の要素を指すグローバル参照です最後のサイクルでは、値 = 3 の場合、最後の要素も次のようになります。値は 3

4-> [1,2,3,3]

に変更されます。 注:

1. foreach の実装原理には内部ポインターの概念があります

2. foreach ループが終了すると、ポインターは最後の要素を指します

回避方法:

&foreach ループを使用した後、($a) を解除します

以上がこの記事の全内容です。皆様の学習に少しでもお役に立てれば幸いです。その他の関連コンテンツについては、お支払いください。 PHP 中国語 Web サイトに注意してください。

関連する推奨事項:

PHP パイプライン プラグイン League\Pipeline の分析について

PHP を使用して複数の動画を同時にアップロードする機能

以上がforeachループ後に残るPHP配列参照の問題を解決する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。