Contao-Camp 2024
Ergebnis 1 bis 6 von 6

Thema: Array-Wert aus Objekt auslesen | Array, Objekt, protected

  1. #1
    Contao-Fan Avatar von marcos
    Registriert seit
    09.02.2011.
    Ort
    Schweiz
    Beiträge
    575
    User beschenken
    Wunschliste

    Frage Array-Wert aus Objekt auslesen | Array, Objekt, protected

    Hallo zusammen

    Ich stehe grad etwas auf dem Schlauch... wie kann ich in Contao den Wert innerhalb eines Objekts ausgeben?

    Bei folgendem Array möchte ich auf den Inhalt von [soldout] zugreifen.

    PHP-Code:
    Array
    (
        [
    0] => Array
            (
                [
    cssID] => 
                [class] => 
    product new product_0 product_even product_first
                
    [html] => 
                [
    product] => Isotope\Model\Product\Standard Object
                    
    (
                        [
    objPrice:protected] => Isotope\Collection\ProductPrice Object
                        
    (      
                            
    //...
                        
    )

                        
    //... 

                        
    [strFormId:protected] => fmd3_product_1001
                        
    [hasUpload:protected] => 
                        [
    doNotSubmit:protected] => 
                        [
    arrData:protected] => Array
                            (
                                [
    id] => 1001
                                
    [pid] => 0
                                
    [gid] => 1
                                
    [tstamp] => 1435728837
                                
    [language] => de
                                
    [dateAdded] => 1435696333
                                
    [type] => 1
                                
    [orderPages] => a:2:{i:0;s:2:"23";i:1;s:1:"4";}
                                [
    inherit] => 
                                [
    alias] => test
                                
    [sku] => test
                                
    [name] => Test
                                
    [teaser] => 
                                [
    description] => Test
                                
    [images] => 
                                [
    groups] => 
                                [
    published] => 1
                                
    [start] => 
                                [
    stop] => 
                                [
    owner] => 
                                [
    soldout] => 1   // <--- diesen Wert brauche ich
                                
    [images_fallback] => 
                                [
    sorting] => 512
                            
    )

                
    //... 


    Zur Info:
    Das ist vom Template "mod_iso_productlist.html5". Dort wird per foreach bereits der erste Teil ausgelesen:

    PHP-Code:
    foreach ($this->products as $product): 
       echo 
    $product['cssID'];
       echo 
    $product['html'];
       
    //... 
    Wie komme ich aber in die Ebenen weiter runter bis zu soldout?

    Danke und LG
    Marco

  2. #2
    Contao-Urgestein Avatar von the_scrat
    Registriert seit
    24.02.2010.
    Ort
    Augsburg
    Beiträge
    2.051
    User beschenken
    Wunschliste

    Standard

    Hi,

    normalerweise kommst du wie in einem Array üblich an die unteren Ebenen, indem du dich an die Struktur hältst.

    Ich würde es, ohne getestet zu haben einfach mal so probieren:

    PHP-Code:
    $product['product']->soldout 

    Der "Arrayeintrag" product ist ein Object, welches wiederrum Werte besitzt, arrData
    Programmers don't comment their code. It was hard to write, it should be hard to understand...

  3. #3
    Contao-Fan Avatar von marcos
    Registriert seit
    09.02.2011.
    Ort
    Schweiz
    Beiträge
    575
    User beschenken
    Wunschliste

    Standard

    Ja, hat funktioniert! Vielen Dank!

    Ich hatte was ähnliches probiert, dachte aber, dass ich schrittweise zum Ziel muss und hatte zu viel angegeben.

  4. #4
    Contao-Nutzer
    Registriert seit
    03.05.2012.
    Beiträge
    114

    Standard

    Hallo,

    ich klink mich mal ein. Woher kommt das "$this->products" in deinem PHP-Code?

    Gruß
    Boomroot

  5. #5
    Contao-Urgestein Avatar von the_scrat
    Registriert seit
    24.02.2010.
    Ort
    Augsburg
    Beiträge
    2.051
    User beschenken
    Wunschliste

    Standard

    Zitat Zitat von boomroot Beitrag anzeigen
    Hallo,

    ich klink mich mal ein. Woher kommt das "$this->products" in deinem PHP-Code?
    Schau in die mod_iso_productlist, dann siehst du, dass dort $this->products (mit "s") verwendet wird!
    Programmers don't comment their code. It was hard to write, it should be hard to understand...

  6. #6
    Contao-Urgestein Avatar von Samson1964
    Registriert seit
    05.11.2012.
    Ort
    Berlin
    Beiträge
    2.794

    Standard

    Ich hänge mich mal hier mit ran. Ein Array $result sieht so aus (Ausgabe von print_r):
    Code:
    Array
    (
        [0] => Array
            (
                [0] => Item Object
                    (
                        [value:Item:private] => 22
                        [weight:Item:private] => 1302417061
                    )
    
                [1] => Item Object
                    (
                        [value:Item:private] => 20
                        [weight:Item:private] => 1418384363
                    )
    
                [2] => Item Object
                    (
                        [value:Item:private] => 12
                        [weight:Item:private] => 1468882602
                    )
    
                [3] => Item Object
                    (
                        [value:Item:private] => 5
                        [weight:Item:private] => 46298
                    )
            )
    )
    Wie komme ich an die vier Objekte mit ihren Eigenschaften value und weight?
    Viele Grüße
    Frank

    Seit Mai 2013 Fan von Contao
    Webmaster vom Deutschen Schachbund und Berliner Schachverband
    Mein Blog: Schachbulle
    Meine Erweiterungen bei GitHub
    Meine Videos auf YouTube: Playlist zur Contao-Programmierung/Einrichtung

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •