Comment forer une partie d'une partie des variables d'éléments d'objets qui sont des matrices?

StackOverflow https://stackoverflow.com/questions/9034686

Question

J'essaie de créer une foreach qui traversera certaines variables dans un objet.

au moment où il est juste

class jabroni
{
  var $name = "The Rock";
  var $phrases = array ("The rock says", "Im gonna put the smackdown on you", "Bring it on jabroni");
  var $moves = array ("Clothes line", "Pile driver", "Reverse flip");
}

J'ai essayé de faire ceci:

$jabroni = new jabroni()
foreach ($jabroni as $value)
{
  echo $value->phrases;
  echo $value->moves;
}

Cependant, rien n'est imprimé.

Des idées Si ce que j'essaie de réaliser est possible, j'ai cet incitant que ce n'est pas et que je devrai simplement faire des déclarations individuelles pour chaque variable membre d'objet qui est une zone?

Merci pour votre temps!

Était-ce utile?

La solution

You are doing wrong the loop.. You have one object, not an array of objects. so the correct way should be..

$jabroni = new jabroni();
foreach ($jabroni->phrases as $value)
{
    echo $value;
}
foreach ($jabroni->moves as $value)
{
    echo $value;
}

Autres conseils

foreach ($jabroni->phrases as $value) {
    echo $value;
}

foreach ($jabroni->moves as $value) {
    echo $value;
}

You can do it in nested foreach loops. This will be easy instead of going for two for loops seperatley

foreach ($jabroni as $keys => $values)
{
    if ($keys == 'phrases' || $keys == 'moves') {
           foreach ($values as $value) {
             echo $value;
           }
    }
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top