Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Fatal error: Cannot use object of type stdClass as array in..

[es] :: PHP :: Fatal error: Cannot use object of type stdClass as array in..

[ Pregleda: 3301 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

vladimirn
Vladimir Nikolic
Novi Sad

Član broj: 38585
Poruke: 81
*.static.sbb.co.yu.



Profil

icon Fatal error: Cannot use object of type stdClass as array in..24.04.2007. u 10:26 - pre 206 meseci
Pozdrav,
da li mi neko moze po moci oko ove greske:
Fatal error: Cannot use object of type stdClass as array in...

moj code:
Code:

// client.php
<?php
include("includes/client_lib.php");
$aInitialData = getInitialData();// ovde pozivam funkciju koja je nekom fajlu na drugom serveru
foreach ($aInitialData as $info) {
$smarty->append("naziv",$info);
}
?>


Dobijam poruku Fatal error: Cannot use object of type stdClass as array in...

Ukoliko uradim ovako:
Code:

<?php
$aInitialData = getInitialData();
print_r($aInitialData);
?>


Dobijem:
Code:

stdClass Object
(
    [kategorije] => stdClass Object
        (
            [0] => -
            [10] => Muzika
            [20] => Film
            [30] => Sport
            [40] => Politika
         )

    [clanovi] => Array
        (
            [0] =>  Milan Mihajlovic
            [1] => Dragan Bjelogrlic
            [2] => Petar Nonkovic
           )

    [kuce] => stdClass Object
        (
            [0] => -
            [10] => Pozoriste Mladih
            [20] => Narodna biblioteka
            [30] => Arena, Jadran, Narodni
            
        )

    [jezici] => stdClass Object
        (
            [EN] => Engleski
            [SR] => Srpski
        )

)


Ono sto meni treba jeste da to nekako iskoristim i da za svaki dobijeni rezultat napravim izbor sa check boxovima:
Kategorija: []Muzika []Film []Sport []Politika
Clanovi: []Milan []Dragan []Petar
Kuce: []Pozoriste mladih []Narodna biblioteka []Arena, Jadran, Narodni
Jezici: []Engleski []Srpski

 
Odgovor na temu

dakipro
Dalibor Jovic
Web Developer
Bergen, Norway

Moderator
Član broj: 31848
Poruke: 1792
82.208.211.*

Sajt: norway.dakipro.com


+190 Profil

icon Re: Fatal error: Cannot use object of type stdClass as array in..24.04.2007. u 10:36 - pre 206 meseci
Od oka, nepravilno koristis funkciju, cini mi se da funkcija vraca objekat, gde nekom metodom treba da dobijes listu clanova, a ne direktno kroz foreach. Lepo pise u gresci, ne mozes objekat da tretiras kao niz.
 
Odgovor na temu

vladimirn
Vladimir Nikolic
Novi Sad

Član broj: 38585
Poruke: 81
*.static.sbb.co.yu.



Profil

icon Re: Fatal error: Cannot use object of type stdClass as array in..24.04.2007. u 10:47 - pre 206 meseci
Da, vraca se objekat ali sta da uradim i kojom metodom da dobijem listu clanova?
 
Odgovor na temu

dakipro
Dalibor Jovic
Web Developer
Bergen, Norway

Moderator
Član broj: 31848
Poruke: 1792
82.208.211.*

Sajt: norway.dakipro.com


+190 Profil

icon Re: Fatal error: Cannot use object of type stdClass as array in..24.04.2007. u 11:54 - pre 206 meseci
Ne postoji neka univerzalna metoda, najbolje da trazis po dokumentaciji ili pitas tog lika odakle koristis klasu. Verovatno mozes da uradis nesto ovako:

Code:

$aInitialData = getInitialData();
$clanovi= $aInitialData->clanovi


ali samo za clanove jer su clanovi niz (Array), a mozda mozes i ovo drugo na mucku, ali bi ti preporucio da iscimas za neku dokumentaciju za funkciju ili klasu.
 
Odgovor na temu

vladimirn
Vladimir Nikolic
Novi Sad

Član broj: 38585
Poruke: 81
*.static.sbb.co.yu.



Profil

icon Re: Fatal error: Cannot use object of type stdClass as array in..25.04.2007. u 13:15 - pre 206 meseci
Reseno. Iskoristio sam php funkciju get_object_vars i objekat prebacio u array i kasnije sam taj array provukao kroz petlju
Code:

$aInitialData = getInitialData();
function makeAssoc($res) {
  if (is_object($res)) $res = get_object_vars($res);
  while (list($key, $value) = each($res)) {
    if (is_object($value) || is_array($value)) {
      $res[$key] = makeAssoc($value);
    }
  }
  return $res;
}
 
Odgovor na temu

[es] :: PHP :: Fatal error: Cannot use object of type stdClass as array in..

[ Pregleda: 3301 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.