Heinz: GeisterArray, da und doch nicht da

Beitrag lesen

Hi,

»» Warning: date() expects parameter 2 to be long, string given in....

Warnung, die Funktion date() erwartet, dass der zweite Parameter eine Zahl sein soll, es kommt aber ein String...

Ja ist klar, nur wo soll der herkommen?

Eine vernünftige Prüfung des Variableninhalts führt man mit var_dump() durch.

Unterscheidet sich nicht sonderlich von print_r(), und ein Test brachte das gleiche Resultat.

»» Das liegt daran, dass $w['ModificationDate'] gar nicht existiert wie mir print_r($w) auch zeigt.

Ich vermute, du hast auch noch ein paar Tippfehler integriert, und greifst irgendwo auf den falschen Wert zu, ohne es zu bemerken.

Sicherheitshalber alles copy&paste, also kein Tippfehler.

»» Was mache ich falsch?

Deine Fehlersuchstrategie ist verbesserungswürdig.

Normalerweise komme ich zurecht. Das Seltsame ist, wenn ich ein Beispiel aus den Werten erstelle die mir print_r gibt, passiert kein Fehler:

  
<?php  
  
$w[Title] = 'Suche der Maerkischen Allgemeinen';  
$w[Summary] = 'Dortmund (dpa) genommen haben soll, muss als Baecker weiterbeschaeftigt werden. Das hat das Arbeitsgericht Dortmund entschieden.';  
$w[Url] = 'http://www.maerkischeallgemeine.de/cms/beitrag/11452518/63589/Jaehriger-muss-im-Broetchenbelag-Fall-weiterbeschaeftigt-werden.html';  
$w[ClickUrl] = 'http://www.maerkischeallgemeine.de';  
$w[NewsSource] = 'Maerkische Allgemeine';  
$w[NewsSourceUrl] = 'http://www.maerkischeallgemeine.de/';  
  
  
if($w['ModificationDate']){  
echo '<h5>DER WERT IST VORHANDEN</h5>';  
$lastmod  = date("D, d.m.Y",$w['ModificationDate']);  
}  
  
// Mal sehen ob eine Fehlermeldung kommt  
echo $lastmod  = date("D, d.m.Y",$w['ModificationDate']);  
  
?>  
  

error_reporting(E_ALL);

Das nutze ich natürlich, ändert aber auch nichts an der Sachlage.

Heinz