Como foreach através de parte de um objetos de variáveis de membro de que são matrizes?
-
14-11-2019 - |
Pergunta
Eu estou tentando criar um foreach, que passará por algumas variáveis dentro de um objeto.
No momento, é apenas
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");
}
Eu tentei fazer isso:
$jabroni = new jabroni()
foreach ($jabroni as $value)
{
echo $value->phrases;
echo $value->moves;
}
No entanto, nada é impresso.
Alguma idéia se o que eu estou tentando alcançar é possível, eu tenho a intuição de que não o seu e que eu tenho para fazer o indivíduo instruções foreach para cada objeto variável de membro que é uma área?
Obrigado pelo seu tempo!
Solução
Você está fazendo de errado loop..Você tem um objeto, não um array de objetos.então, a maneira correta deve ser..
$jabroni = new jabroni();
foreach ($jabroni->phrases as $value)
{
echo $value;
}
foreach ($jabroni->moves as $value)
{
echo $value;
}
Outras dicas
foreach ($jabroni->phrases as $value) {
echo $value;
}
foreach ($jabroni->moves as $value) {
echo $value;
}
Você pode fazê-lo em nested loops foreach.Isso vai ser fácil, em vez de ficar dois loops for seperatley
foreach ($jabroni as $keys => $values)
{
if ($keys == 'phrases' || $keys == 'moves') {
foreach ($values as $value) {
echo $value;
}
}
}
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow