DB Abfrage- Standardabfrage funktioniert nicht!???

am 22.03.2014 - 18:14 Uhr in
Ist mir echt peinlich, aber ich komme nicht auf den Trichter!
in einem hook_node_update() habe ich folgenden Code stehen:
$liga_punkte_old = $result_query->$field_punkt_name;//['und']['0']['value'];
drupal_set_message(print_r($liga_punkte_old,1));
Als Ergebnis erhalte ich:
Array ( [und] => Array ( [0] => Array ( [value] => 1 [format] => [safe_value] => 1 ) ) )
Wenn ich aber jetzt der Variable den value übergeben möchte, also
$liga_punkte_old = $result_query->$field_punkt_name ['und']['0']['value'];
drupal_set_message(print_r($liga_punkte_old,1));
So streikt der Code! Zu anfangs dachte ich, es läge an der '0' die vorher drin stand, habe deshalb eine 1 draus gemacht. Aber hat damit nichts zu tun. Was könnte das Problem sein, weiß jemand Rat?
- Anmelden oder Registrieren um Kommentare zu schreiben
Moin, aus ['0'] mache [0].
am 22.03.2014 - 23:55 Uhr
Moin,
aus ['0'] mache [0]. Also:
$liga_punkte_old = $result_query->$field_punkt_name ['und'][0]['value'];
drupal_set_message(print_r($liga_punkte_old,1));
Besser du nutzt das devel- Modul und gibst Objekte und Arrays mit:
dpm ($liga_punkte_old);
aus.
nope, das war es nicht. Aber
am 25.03.2014 - 09:01 Uhr
nope, das war es nicht. Aber trotzdem Danke!
<?php
$liga_punkte_old = $result_query->{$field_punkt_name} ['und']['0']['value'];
?>
ist korrekt!
Hi, kleines Feedback um
am 28.03.2014 - 16:31 Uhr
Hi,
kleines Feedback um Probleme zu vermeiden, denn generell ist es kein guter Stil so direkt auf Feldwerte zu zugreifen. Ich empfehle Dir mal einen Artikel von comm-press http://comm-press.de/de/blog/keine-angst-vor-entitymetadatawrapper
Gruß Dennis