CruellaDeVille Skrevet 10. juni 2016 Skrevet 10. juni 2016 Google kan ikke hjelpe meg. Jeg har en array av Emner, men ingen måte å få hentet ut emnet som ligger i array-key. Tips for å dytte meg i riktig retning?
CruellaDeVille Skrevet 10. juni 2016 Forfatter Skrevet 10. juni 2016 Google kan ikke hjelpe meg. Jeg har en array av Emner, men ingen måte å få hentet ut emnet som ligger i array-key. Tips for å dytte meg i riktig retning? Dette er mitt spede forsøk: foreach($all as $key=>$value){ $s = (object)$all[$key]; print "<pre>"; print_r($s->get('infotermin')); print "</pre>"; Her får jeg feilmelding at stdclass har ingen funksjon som heter get (og det har den trolig ikke). Jeg forsøkte å caste til Syllabus, men da hyler compiler.
Lanes Skrevet 10. juni 2016 Skrevet 10. juni 2016 Ikke sikker på om jeg egentlig forstår problemet her, men jeg tror kanskje dette er hva du ser etter: foreach($all as $key => $value) { $s = $value['infotermin']; echo '<pre>', $s, '</pre>; } eller foreach($all as $key => $value) { $s = $value->infotermin; echo '<pre>', $s, '</pre>; } Avhenger litt av $value objektet. Kan du gi et eksempel?
Crowly Skrevet 13. juni 2016 Skrevet 13. juni 2016 (endret) Her får jeg feilmelding at stdclass har ingen funksjon som heter get (og det har den trolig ikke).Du kan sjekke hvilke metoder ett objekt har med method_exists(). Skal du hente ut verdier fra ett objekt så må det enten har getter metoder, egenskapene være public eller magic method __get() må være brukt og tillate å hente den egenskapen du spesifiserer. Å ta i bruk en debugger (f.eks. xdebug, og en editor/ide som kan ta i bruk dette) er veldig nyttig, da kan du sette breakpoints i koden og enkelt se hva hver forekomst i array'en består av (pluss andre ting). Da slipper man å bruke print_r() og skrive annen debugging kode. Endret 13. juni 2016 av Crowly
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå