Boubou,: Array inhalt anzeigen

hallo alle zusammen ich hab jetzt in Büchern und und einigen foren geguckt über das ausgeben der Arrayinhalte in einem Skript. Nur da wurde eine funktion gemacht wo in das Feld die Daten eingetragen wurden. Das hat mich etwas verwirrt, ich habe nämlich ein Array welches Register Objekte der Klasse Register hat. Meine ausgabe sieht bis her so aus:

Ordnerid  Ordnername  Ordnerinhalt
...         ...         ...
...

usw. Ich will aber jetzt das da neben das steht also so:

ordnerid  Ordnername  Ordnerinhalt  Registerid Registername Registerinhalt

Die daten für REgister sind in dem Array ordner_register welches die Objekte von Register hat drin. wie kann ich jetzt diese inhalte dieser variable in html code packen? z.b: <td> . ordner_Register .</td>

  1. wie kann ich jetzt diese inhalte dieser variable in html code packen? z.b: <td> . ordner_Register .</td>

    ich versteh zwar nicht ganz, was du meinst - aber ich meine du suchst nach foreach und echo

    1. wie kann ich jetzt diese inhalte dieser variable in html code packen? z.b: <td> . ordner_Register .</td>

      ich versteh zwar nicht ganz, was du meinst - aber ich meine du suchst nach foreach und echo

      ja aber wenn ich das mit foreach oder echo mache dann zeigt er mir das so an Inhalt von ordner_register ist dann:
      Object id #2 Object id #3 Object id #4

      wenn ich mit print_r mal zeigen lasse was in ordner_register drin ist dann macht er das richtig zb:
      Register ID = 1
      Register name = test
      Register inhalt = test

      also ist foreach nicht die lösung genauso wenig echo

      Also nur um klarzustellen ordner_register hat die richtigen Daten die werden mir mit print_r ausgegeben

      1. wie kann ich jetzt diese inhalte dieser variable in html code packen? z.b: <td> . ordner_Register .</td>

        ich versteh zwar nicht ganz, was du meinst - aber ich meine du suchst nach foreach und echo

        ja aber wenn ich das mit foreach oder echo mache dann zeigt er mir das so an Inhalt von ordner_register ist dann:
        Object id #2 Object id #3 Object id #4

        wenn ich mit print_r mal zeigen lasse was in ordner_register drin ist dann macht er das richtig zb:
        Register ID = 1
        Register name = test
        Register inhalt = test

        also ist foreach nicht die lösung genauso wenig echo

        Also nur um klarzustellen ordner_register hat die richtigen Daten die werden mir mit print_r ausgegeben

        Nur zur Ergänzung nochmal die Ausgabe mit print_r sieht so aus:
        Array
        (
            [0] => Register Object
                (
                    [__register_name:private] => B
                    [__register_inhalt:private] => B
                    [__register_id:private] => 2
                )
        )
        und diese ausgabe möchte ich gerne hinkriegen in einer tabelle aber foreach bringt da nichts

        1. Mahlzeit Boubou,

          ja aber wenn ich das mit foreach oder echo mache dann zeigt er mir das so an Inhalt von ordner_register ist dann:
          Object id #2 Object id #3 Object id #4

          Ja, sicher. Wenn Du innerhalb der Schleife einfach die Objekte per echo ausgeben lässt, dann kann echo (das nur Strings ausgeben kann) nicht anders als genau das zu machen. Möchtest Du nicht vielleicht viel lieber einzelne Eigenschaften des Objektes ausgeben lassen?

          also ist foreach nicht die lösung genauso wenig echo

          Falsch und falsch.

          Nur zur Ergänzung nochmal die Ausgabe mit print_r sieht so aus:
          Array
          (
              [0] => Register Object
                  (
                      [__register_name:private] => B
                      [__register_inhalt:private] => B
                      [__register_id:private] => 2
                  )
          )

          Du hast also ein Array. Das erste Element in diesem Array ist ein Register-Objekt. Dieses Register-Objekt wiederum hat drei Eigenschaften, die jeweils einen Wert haben. Sag echo einfach, welche Eigenschaften Du ausgeben willst und es wird sie für Dich ausgeben.

          und diese ausgabe möchte ich gerne hinkriegen in einer tabelle aber foreach bringt da nichts

          Doch.

          MfG,
          EKKi

          --
          sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
  2. Mahlzeit Boubou,,

    usw. Ich will aber jetzt das da neben das steht also so:

    ordnerid  Ordnername  Ordnerinhalt  Registerid Registername Registerinhalt

    Die daten für REgister sind in dem Array ordner_register welches die Objekte von Register hat drin.

    Und wie sieht die Datenstruktur des Arrays und der enthaltenen Objekte jetzt genau aus? Oder spendierst Du 'ne Runde Glaskugeln?

    wie kann ich jetzt diese inhalte dieser variable in html code packen?

    Indem Du sie mittels einer geeigneten Funktion (z.B. dem von Dir verschmähten echo) ausgeben lässt - das geht natürlich nur, wenn es sich um Variablentypen handelt, die entweder implizit in einen String umgewandelt werden können oder die eine entsprechende Standardeigenschaft besitzen. Oder Du gibst halt einfach die entsprechenden Eigenschaften des jeweiligen Objekts aus. Aber solange Du nicht mit weiteren Informationen zur Struktur herausrückst, können Deine Leser und potentiellen Helfer eigentlich nur raten ...

    z.b: <td> . ordner_Register .</td>

    Das funktioniert SO gar nicht.

    MfG,
    EKKi

    --
    sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|
  3. hey das auslesen klappt aus einem Grund nicht den ich heruasgefunden habe. Das Array sieht so aus:

    Array
    (
        [0] => Register Object
            (
                [__register_name:private] => B
                [__register_inhalt:private] => B
                [__register_id:private] => 2
            )
    )

    soo key ist [0] value Register Object. Key2 ist [__register_name:private] und genau das ist das problem. Wenn ich bei Register die variablen auf public setze ist key 2 [__register_name] dann kann er auch die gewählten value auslesen, aber wenn ich die Variablen von Register auf private oder protected lasse kommt [__register_name:private oder :protected] und durch das :private macht er ungültge Zeichen die er dann nicht zum auslesen verwendet. Ich greife aus der Ordnerklasse auf die Registerklassen Attribute zu. Wie kann ich dieses :private im key2 umgehen damit er wie bei Public für key2 die Ausgabe [__register_name] ausliefert. Hat jemand eine ahnung dieses Private zu umgehen?

    1. Mahlzeit boubou,

      Wenn ich bei Register die variablen auf public setze ist key 2 [__register_name] dann kann er auch die gewählten value auslesen,

      Logisch: wenn Du Eigenschaften öffentlich machst, dann sind sie "von außen" erreichbar.

      aber wenn ich die Variablen von Register auf private oder protected lasse kommt [__register_name:private oder :protected] und durch das :private macht er ungültge Zeichen die er dann nicht zum auslesen verwendet.

      Auch logisch: wenn Du Eigenschaften nicht öffentlich machst, dann sind sie "von außen" nicht erreichbar.

      Wie kann ich dieses :private im key2 umgehen damit er wie bei Public für key2 die Ausgabe [__register_name] ausliefert.

      Gar nicht. Mache die entsprechenden Variablen im Objekt öffentlich, dann sind sie es auch.

      MfG,
      EKKi

      --
      sh:( fo:| ch:? rl:( br:> n4:~ ie:% mo:} va:) de:] zu:) fl:{ ss:) ls:& js:|