Ich versuche meine Hand bei TDD mit PHP und schreibe eine webbasierte App für den Zugriff auf Artikel in einer MySQL-Datenbank; dies ist die Testfunktion:PHP: String-Parameter zu __construct nicht korrekt übergeben
class TestArticleTestCase extends UnitTestCase {
...
public function testArticleGenerateInsertSqlString() {
$testArticle = new Article("12345", "2009-09-13 20:20:20", "Test heading", "Test text");
...
}
und das ist die Art Klasse:
class Article {
private $_articleId;
private $_pubDate;
private $_heading;
private $_text;
public function __construct($articleId, $pubDateUnchecked, $headingUnescaped, $textUnescaped) {
echo "pubDateUnchecked == $pubDateUnchecked </BR>";
...
}
ich das Echo in dem Konstruktor enthalten, da die Daten in der Datenbank nicht das war, was ich den Artikel mit, initialisiert und sicher genug, um das Problem Tracing, das ist der Ausgang dieses Echos im Konstruktor:
pubDateUnchecked == 2005-06-01 00.00.00
Vielleicht habe ich diesen Code nur zu lange angeguckt, aber wie kann ich die Zeichenfolge ändern, von wo ich sie instanziiere, wo sie instanziiert wird, BEVOR ich anfange, sie als Datum zu manipulieren (ich überprüfe, ob es ein zulässiges Datumsformat ist) mit strtotime() und date() später ..).
Hat jemand irgendwelche Ideen, wo Sie suchen?
Vielen Dank, Stephan.
bist du sicher? Ich kann nichts falsch in diesem Code sehen – knittl