Alt 14.08.2011, 16:37:47   #1 (permalink)
Gesperrt

ID: 386294
Lose-Remote

Reg: 30.01.2009
Beiträge: 627
xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom
Standard Arrays & Obejekte verstehen

Ich Programmier jetzt schon ziemlich lange , aber ich verstehe Arrays & Obejekte imemrnoch nicht so ganz...

Mit einem normalem Array $hallo['infos']['name'] hab ich kein Problem, da ich es aber jetzt mit einem "SimpleXMLObjekt" zu tuen habe , gibt es einie Probleme , zuersteinmal mein Objekt :


Code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
75:
76:
SimpleXMLElement Object ( [@attributes] => Array ( [UID] => 5641 ) [API-Status] => OK [API-FehlerCode] => SimpleXMLElement Object ( ) [Programm] => Array ( [0] => SimpleXMLElement Object ( [@attributes] => Array ( [ID] => 2304 ) [KID] => 2304 [PubAccept] => auto [Programmname] => Telekom Xtra Card [Kategorie] => Handy & Mobilfunk [Beschreibung] => Mit der kostenlosen Telekom Xtra Card erhalten Ihre User 50 Freiminuten sowie 100 Frei-SMS. Desweiteren erhalten bei einer Anmeldung im Callcenter eine Aufladung Ihres Kontos von 3 EUR. Zusätzlich nehmen die User an einer Verlosung für einen einen Mini Cooper teil. das alles ohne Mindestguthaben und Vertragslaufzeit und einem kostengünstigen Tarif von nur 5 Cent pro Minute. Profitieren Sie jetzt von einer attraktiven Vergütung! [Bedingungen] => SEM erlaubt Doubletten, Fakeeinträge oder Leads über Eintragsdienste, Paidmailer, sonstigen Bonus-Cashbacksystemen bzw. über Coreg und CoSponsoring eingesammelte Daten werden nicht vergütet Berücksichtigt werden nur valide Daten von Usern aus Deutschland, die über 18 Jahre alt sind. [StartDate] => 2011-08-13 13:00:06 [EndeDate] => SimpleXMLElement Object ( ) [Art] => L [Top] => nein [CookieLifeTime] => 90 [MaxVTime] => 45 [VerguetungLEAD] => SimpleXMLElement Object ( [Standard] => 1.80 ) [VerguetungSALE] => SimpleXMLElement Object ( [Standard] => SimpleXMLElement Object ( ) ) [Bewerbungsstatus] => SimpleXMLElement Object ( ) [Partnerschaft] => SimpleXMLElement Object ( ) [FreelinkWMID] => SimpleXMLElement Object ( ) [FreelinkURL] => SimpleXMLElement Object ( ) ) ...
Mein Ziel ist es mir die Programme in einer Foreach ausgeben zu lassen.

Mein Versuch war jetzt :
PHP-Code:
1:
2:
3:
4:
5:
6:
    foreach($xml as $row) {
  
$id $row['kid'];
  
$name $row['Programmname'];
  
$top_kat $row['parentcategoryid'];
  
$pgr_total $row['amountofprograms'];

Aber iwie geht das wohl nicht so einfach , ich habe auch schon nach "PHP OBJEKT" geggolt aber nichts gefunden was mir das richitg erklärt
xb8tom ist offline   Mit Zitat antworten
Gesponsorte Links
Alt 14.08.2011, 16:46:00   #2 (permalink)
Erfahrener Benutzer

ID: 174417
Lose-Remote

Reg: 10.03.2007
Beiträge: 666
baserider befindet sich auf einem aufstrebenden Ast
Standard

klappt es so hier?

PHP-Code:
1:
2:
3:
4:
foreach($deinObjekt->Programm as $row){
    
$row->KID
    
// usw...

baserider ist offline   Mit Zitat antworten
Alt 14.08.2011, 16:47:40   #3 (permalink)
Gesperrt

ID: 386294
Lose-Remote

Reg: 30.01.2009
Beiträge: 627
xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom
Standard

Ne leider auch nicht , die Variabelen sind dann leer
xb8tom ist offline Threadstarter   Mit Zitat antworten
Alt 14.08.2011, 16:52:01   #4 (permalink)
Erfahrener Benutzer

ID: 174417
Lose-Remote

Reg: 10.03.2007
Beiträge: 666
baserider befindet sich auf einem aufstrebenden Ast
Standard

hatte auch das echo vergessen:

PHP-Code:
1:
2:
3:
4:
5:
$deinObjekt = new SimpleXMLElement($xmlstr);
foreach(
$deinObjekt->Programm as $row){
    echo 
$row->KID
    
// usw...

baserider ist offline   Mit Zitat antworten
Alt 14.08.2011, 17:50:46   #5 (permalink)
Gesperrt

ID: 386294
Lose-Remote

Reg: 30.01.2009
Beiträge: 627
xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom
Standard

Hm jetzt eght es , aber warum , also was hat es mit dem -> auf sich , wann benuzt man das
xb8tom ist offline Threadstarter   Mit Zitat antworten
Alt 14.08.2011, 17:57:23   #6 (permalink)
Erfahrener Benutzer

ID: 174417
Lose-Remote

Reg: 10.03.2007
Beiträge: 666
baserider befindet sich auf einem aufstrebenden Ast
Standard

Hi,

naja du benutzt doch ein Objekt und dann kannst du mit dem Pfeil auf die Objekteigenschaften zugreifen, du hast doch weiter oben die Ausgabe, wo alles steht
baserider ist offline   Mit Zitat antworten
Alt 14.08.2011, 18:02:25   #7 (permalink)
Gesperrt

ID: 386294
Lose-Remote

Reg: 30.01.2009
Beiträge: 627
xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom
Standard

Achso okay , und wenn ich auf [VerguetungLEAD] Standart zugreifen will ist es dann : $row-> [VerguetungLEAD]->Standart, richitg ?
xb8tom ist offline Threadstarter   Mit Zitat antworten
Alt 14.08.2011, 18:04:29   #8 (permalink)
Erfahrener Benutzer

ID: 174417
Lose-Remote

Reg: 10.03.2007
Beiträge: 666
baserider befindet sich auf einem aufstrebenden Ast
Standard

fast...

$row->VerguetungLEAD->Standard
baserider ist offline   Mit Zitat antworten
Alt 14.08.2011, 18:08:23   #9 (permalink)
Gesperrt

ID: 386294
Lose-Remote

Reg: 30.01.2009
Beiträge: 627
xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom
Standard

Achso ja stimmt , ncoh eine kleine Frage gibt es auch Objekten in Arrays oder anderesrum , vorher erkenen ich sowas in der Print ausgabe ?
xb8tom ist offline Threadstarter   Mit Zitat antworten
Alt 14.08.2011, 18:09:52   #10 (permalink)
Erfahrener Benutzer

ID: 174417
Lose-Remote

Reg: 10.03.2007
Beiträge: 666
baserider befindet sich auf einem aufstrebenden Ast
Standard

klar gibt es das... is doch in deinem Beispiel so. Den Rest des Satzes verste ich nicht.
baserider ist offline   Mit Zitat antworten
Alt 14.08.2011, 18:12:58   #11 (permalink)
Gesperrt

ID: 386294
Lose-Remote

Reg: 30.01.2009
Beiträge: 627
xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom
Standard

Naja wie ich erkenne , wann ich wie vorgehen muss um an mein Ergebiss zu kommen , also wie sehe ich da ist ein Array da muss ich mit [] ran , und wann ist es ein Objekt und ich muss mit -> ran
xb8tom ist offline Threadstarter   Mit Zitat antworten
Alt 14.08.2011, 18:14:32   #12 (permalink)
Erfahrener Benutzer

ID: 174417
Lose-Remote

Reg: 10.03.2007
Beiträge: 666
baserider befindet sich auf einem aufstrebenden Ast
Standard

steht immer dahinter, was es ist:

Code:
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
SimpleXMLElement Object ( [@attributes] => Array // Array ( [UID] => 5641 ) [API-Status] => OK [API-FehlerCode] => SimpleXMLElement Object // Objekt ( ) )
baserider ist offline   Mit Zitat antworten
Alt 14.08.2011, 18:18:03   #13 (permalink)
Gesperrt

ID: 386294
Lose-Remote

Reg: 30.01.2009
Beiträge: 627
xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom
Standard

Okay angenommen ich möchte die UID haben , dann mach ich :
$xml[@attributes]->UID richtig ?
xb8tom ist offline Threadstarter   Mit Zitat antworten
Alt 14.08.2011, 18:21:03   #14 (permalink)
Erfahrener Benutzer

ID: 174417
Lose-Remote

Reg: 10.03.2007
Beiträge: 666
baserider befindet sich auf einem aufstrebenden Ast
Standard

nee,
PHP-Code:
1:
$xml->@attributes['UID'
baserider ist offline   Mit Zitat antworten
Alt 14.08.2011, 18:32:50   #15 (permalink)
Gesperrt

ID: 386294
Lose-Remote

Reg: 30.01.2009
Beiträge: 627
xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom xb8tom
Standard

Achso stimmt @attributes ist ja das Array , also muss das was da drinnen ist in [] und wenn ich API-Status haben will ist es $xml->API-Status hoffe das ist jetzt richitg xD
xb8tom ist offline Threadstarter   Mit Zitat antworten
Antwort

Gesponsorte Links

Anzeige


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
0-8-15-Discounter-Funkwecker ausseinanderbauen und verstehen Kampfwurst Hardware 5 04.04.2008 06:58:01
Bücher, die einen die Welt besser verstehen lassen Taladius Literatur 5 28.05.2006 23:45:53


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:53:38 Uhr.