Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

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

PHP
  • 4 odgovora
  • 4.457 pregleda

Najnovija ↓

Fatal error: Cannot use object of type stdClass as array in.. 24.04.2007. u 11:26 · pre 237 meseci #1
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

Re: Fatal error: Cannot use object of type stdClass as array in.. 24.04.2007. u 11:36 · pre 237 meseci #2
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.
Potpis
http://norway.dakipro.com/
Re: Fatal error: Cannot use object of type stdClass as array in.. 24.04.2007. u 12:54 · pre 237 meseci #4
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.
Potpis
http://norway.dakipro.com/
Re: Fatal error: Cannot use object of type stdClass as array in.. 25.04.2007. u 14:15 · pre 237 meseci #5
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;
}
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme