Anything to attend when changing values in a multidimensional foreach() loop?
<p>I got a site that executes the following code</p>

<pre><code>    $keywords = ($_SESSION[$_POST['ts']]);

    print_r($keywords);

    foreach ($keywords as $keyword) {
        foreach ($keyword['whitelist'] as $entry) {
            foreach ($_POST as $key =&gt; $value) {
                if ($key == $entry['encoded_url']) {
                    $entry['ignore'] = $value;
                    $decodedURL = $this-&gt;base64-&gt;url_decode($entry['encoded_url']);
                    if ($value == 'noignore') {
                        echo "found!&lt;br /&gt;";
                        $this-&gt;blacklist_model-&gt;remove($decodedURL);
                        $html = $this-&gt;analyse-&gt;getHTML($decodedURL);
                        $entry['html'] = $html[0];
                        $entry['loading_time'] = $html[1];
                    }
                    if($value == 'alwaysignore') {
                        $this-&gt;blacklist_model-&gt;add($decodedURL);
                    }
                }
            }
        }
    }

    print_r($keywords);
</code></pre>

<p>The output looks like this:
<a href="http://pastebin.com/B3PtrqjB" rel="nofollow">http://pastebin.com/B3PtrqjB</a></p>

<p>So, as you see, there are several "found!"s in the output, so the if clause actually gets executed a few times and I expected the second array to contain new data like 'html', but, as you see, nothing changes. Is there anything to attend when changing values in multidimensional foreach() loops?</p>
