MB: PDO: Assoziativ? Nummerisch? Objekt?

Moin,

worin besteht der Nutzen ob ich ein Objekt, assoziatives- oder numerisches Array aus der Datenbank per PDO auslesen lasse. Numerisches Array ist doch wesentlich performanter als Objekt und assoziatives array. Ich erachte es für sinnig wenn man das assoziativ auslist, denn dann hat man den Key wenn man den Braucht, aber wofür dann das Objekt?

vlg MB

  1. Tach!

    worin besteht der Nutzen ob ich ein Objekt, assoziatives- oder numerisches Array aus der Datenbank per PDO auslesen lasse. Numerisches Array ist doch wesentlich performanter als Objekt und assoziatives array.

    Der Unterschied dürfte nicht wirklich ins Gewicht fallen.

    Ich erachte es für sinnig wenn man das assoziativ auslist, denn dann hat man den Key wenn man den Braucht, aber wofür dann das Objekt?

    Man hat den Key nicht nur, wenn man in braucht, man hat damit auch einen sprechenden Namen und nicht nur eine Nummer, deren Bedeutung man sich anderswo suchen muss, beispielsweise durch Abzählen der Parameter in der SELECT-Klausel, falls man die Query in der Nähe rumliegen und nicht an ganz anderer Stelle im Code hat.

    Die Frage ob Array oder Objekt muss man anhand seines Programmierstils und der Anforderungen beantworten. Wenn man objektorientiert arbeitet, ist es von Vorteil den Datensatz gleich als Objekt vorliegen zu haben. Zudem kann man beim Fetchen auch den Namen der gewünschten Klasse angeben und bekommt so nicht nur ein nackiges stdClass-Objekt, sondern hat gleich noch die Funktionalität der angegebenen Klasse im Objekt.

    dedlfix.

    1. moin,

      Die Frage ob Array oder Objekt muss man anhand seines Programmierstils und der Anforderungen beantworten. Wenn man objektorientiert arbeitet, ist es von Vorteil den Datensatz gleich als Objekt vorliegen zu haben. Zudem kann man beim Fetchen auch den Namen der gewünschten Klasse angeben und bekommt so nicht nur ein nackiges stdClass-Objekt, sondern hat gleich noch die Funktionalität der angegebenen Klasse im Objekt.

      Super AW. Bin jetzt um eine Erfahrung reicher. Danke dir.

      vgl MB

    2. Hallo dedlfix,

      worin besteht der Nutzen ob ich ein Objekt, assoziatives- oder numerisches Array aus der Datenbank per PDO auslesen lasse. Numerisches Array ist doch wesentlich performanter als Objekt und assoziatives array.

      Der Unterschied dürfte nicht wirklich ins Gewicht fallen.

      Der Unterschied zwischen assoziativem Array und numerischem Array ist in PHP eh nicht gegeben:

      An array in PHP is actually an ordered map. A map is a type that associates values to keys.

      Ob ich eine Zahl oder einen String als Key gebe ist ziemlich uninteressant für die Performance.

      Ich erachte es für sinnig wenn man das assoziativ auslist, denn dann hat man den Key wenn man den Braucht, aber wofür dann das Objekt?

      Man hat den Key nicht nur, wenn man in braucht, man hat damit auch einen sprechenden Namen und nicht nur eine Nummer, deren Bedeutung man sich anderswo suchen muss, beispielsweise durch Abzählen der Parameter in der SELECT-Klausel, falls man die Query in der Nähe rumliegen und nicht an ganz anderer Stelle im Code hat.

      Und auch eine Änderung der Felder im SELECT hat dann nicht gleich katastrophale Auswirkungen auf den Code.

      LG,
      CK