Moin,

ich habe gerade ein kleines Brett vorm Kopf und komme gerade nicht an die Ausgabe...

Die Ausgabe an sich stellt kein Problem dar, also mit foreach $this->foo in $foo und das dann ausgeben oder mit einer weiteren foreach in $foo->bar in $bar auflösen lassen.

Ich habe eine jetzt eine Auflistung, die folgendermaßen aufgebaut ist:

tables
columns
rows
rowDescription
rowValue

Das alles sind Listen, die sich beliebig duplizieren und mehrfach auftreten können. lassen. Ich möchte jetzt gerne die allerersten Werte für rowDescription ausgeben lassen.

Ich dachte ich könnte dies am besten über foreach ($tables['columns']['rows']['0'] as $description) und dann echo $description->rowDescription ausgeben lassen, hierbei erhalte ich aber denn den Error:

Code:
[2018-07-16 15:10:49] request.INFO: Matched route "contao_frontend". {"route":"contao_frontend","route_parameters":{"_token_check":true,"_controller":"Contao\\CoreBundle\\Controller\\FrontendController::indexAction","_scope":"frontend","alias":"dev-area","_route":"contao_frontend"},"request_uri":"dev-area.html","method":"HEAD"} []
[2018-07-16 15:10:49] security.INFO: Attempting SimplePreAuthentication. {"key":"frontend","authenticator":"Contao\\CoreBundle\\Security\\ContaoAuthenticator"} []
[2018-07-16 15:10:49] request.INFO: Matched route "contao_frontend". {"route":"contao_frontend","route_parameters":{"_token_check":true,"_controller":"Contao\\CoreBundle\\Controller\\FrontendController::indexAction","_scope":"frontend","alias":"dev-area","_route":"contao_frontend"},"request_uri":"dev-area.html","method":"GET"} []
[2018-07-16 15:10:49] security.INFO: Attempting SimplePreAuthentication. {"key":"frontend","authenticator":"Contao\\CoreBundle\\Security\\ContaoAuthenticator"} []
[2018-07-16 15:10:49] app.CRITICAL: An exception occurred. {"exception":"[object] (Symfony\\Component\\Debug\\Exception\\FatalThrowableError(code: 0): Cannot use object of type stdClass as array at /templates/rsce_table.html5:36)"} []

Hier mal das Ergebnis des var_dump($this->tables):

Code:
array(1) {
  [0]=>
  object(stdClass)#456 (2) {
    ["tableName"]=>
    string(25) "ÜBERSCHRIFT/BESCHRIFTUNG"
    ["columns"]=>
    array(2) {
      [0]=>
      object(stdClass)#461 (3) {
        ["columnName"]=>
        string(14) "1. Spaltenname"
        ["columnDesc"]=>
        string(20) "1. Spaltenuntertitel"
        ["rows"]=>
        array(5) {
          [0]=>
          object(stdClass)#462 (2) {
            ["rowDescription"]=>
            string(8) "1. Zeile"
            ["rowValue"]=>
            string(1) "1"
          }
          [1]=>
          object(stdClass)#463 (2) {
            ["rowDescription"]=>
            string(8) "2. zeile"
            ["rowValue"]=>
            string(1) "1"
          }
          [2]=>
          object(stdClass)#464 (2) {
            ["rowDescription"]=>
            string(8) "3. Zeile"
            ["rowValue"]=>
            string(1) "1"
          }
          [3]=>
          object(stdClass)#465 (2) {
            ["rowDescription"]=>
            string(8) "4. Zeile"
            ["rowValue"]=>
            string(1) "0"
          }
          [4]=>
          object(stdClass)#466 (2) {
            ["rowDescription"]=>
            string(8) "5. Zeile"
            ["rowValue"]=>
            string(1) "0"
          }
        }
      }
      [1]=>
      object(stdClass)#467 (3) {
        ["columnName"]=>
        string(14) "2. Spaltenname"
        ["columnDesc"]=>
        string(20) "2. Spaltenuntertitel"
        ["rows"]=>
        array(5) {
          [0]=>
          object(stdClass)#468 (2) {
            ["rowDescription"]=>
            string(11) "1. 2. Zeile"
            ["rowValue"]=>
            string(1) "1"
          }
          [1]=>
          object(stdClass)#469 (2) {
            ["rowDescription"]=>
            string(11) "2. 2. Zeile"
            ["rowValue"]=>
            string(1) "1"
          }
          [2]=>
          object(stdClass)#470 (2) {
            ["rowDescription"]=>
            string(11) "3. 2. Zeile"
            ["rowValue"]=>
            string(1) "1"
          }
          [3]=>
          object(stdClass)#471 (2) {
            ["rowDescription"]=>
            string(11) "4. 2. Zeile"
            ["rowValue"]=>
            string(1) "1"
          }
          [4]=>
          object(stdClass)#472 (2) {
            ["rowDescription"]=>
            string(11) "5. 2. Zeile"
            ["rowValue"]=>
            string(1) "1"
          }
        }
      }
    }
  }
}
Wie komme ich hierbei am besten an die "1. Zeile", "2. Zeile", etc. der 1. Tabellenspalte? Ich seh es gerade wirklich nicht mehr

Viele Grüße
Markus