Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

dracoart

[Resolvido] Array associativa com Objetos

Recommended Posts

Galera teria como eu acessar a array atraves de objeto?

ex:

 

$texto = 'contato';

 

$string["contato"] = array('nome','cidade');

$objeto = ( object ) $string;

 

echo $objeto->contato[0]; // da certo

echo $objeto->$texto[0]; // da errado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Hmmm .. seria isto ?

<?php

$Objetos = Array ( ) ;
$Objetos [ 0 ] = new stdClass();
$Objetos [ 0 ]->nome = 'Andrey Knupp';

echo $Objetos [ 0 ]->nome ; // Andrey Knupp 
echo $Objetos [ 0 ] [ 'nome' ] ; // fatal error

 

Lembrando que da forma que você guardou no array, também dá certo ..

 

<?php

$Dados [ 'nome' ] = 'Andrey Knupp';

$Objetos = Array ( ) ;
$Objetos [ 0 ] = ( object ) $Dados ;

$storeKey = 'nome' ;
echo $Objetos [ 0 ]->$storeKey ;  // Andrey Knupp

 

O problema ocorreu, pois o 'contato', não tinha uma chave definida no operador de objeto ..

 

Agora, se você fizer:

<?php

$Dados [ 'nome' ] = Array ( 0 => 'Andrey' ) ;
$Objetos = Array ( ) ;
$Objetos [ 0 ] = ( object ) $Dados ;

$storeKey = 'nome' ; // desnecessário, pois não irá funcionar da forma que você tentou fazer.
echo $Objetos [ 0 ]->nome [ 0 ]; // Andrey 

 

Vai dar certo ..

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.