Rekursive Schleife für multidimenional arrays?
Ich im Grunde verwenden möchten str_replace alle Werte einer multidimenional array. Ich kann nicht scheinen, um herauszufinden, wie ich dies für multidimenional arrays. Ich bekomme ein wenig hängen, wenn der Wert ein array ist, dessen scheint nur in einer nie endenden Schleife. Im neu in php, so emaples wäre hilfreich.
function _replace_amp($post = array(), $new_post = array())
{
foreach($post as $key => $value)
{
if (is_array($value))
{
unset($post[$key]);
$this->_replace_amp($post, $new_post);
}
else
{
//Replace :amp; for & as the & would split into different vars.
$new_post[$key] = str_replace(':amp;', '&', $value);
unset($post[$key]);
}
}
return $new_post;
}
Dank
- Zeigen Sie uns, was Sie haben zu kommen mit so weit.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dies ist falsch und wird Ihnen in einer nie endenden Schleife:
Brauchen Sie nicht zu senden
new_post
als argument, und Sie wollen auch das problem kleiner für jede Rekursion. Ändern Sie Ihre Funktion, so etwas wie dieses:...Was ist Los mit array_walk_recursive?
$fruits = [ 'sweet' => $sweet, 'sour' => 'lemon', 'its_not' => ['recursive_depth'] ];
in diesem Falle sind Sie nicht immer die richtige Taste für 'its_not' - es gibt Sie0
, erwartetits_not
- Oder, wie man gesagt hat, DIESE FUNKTION wird NUR BESUCHT, BLATT-KNOTEN (php.net -- lol er capslocked es)