Strict Standart и наследование стандартных объектов - ругается, почему??

Духовность™

Продвинутый новичок
PHP 5.3.3
Наследую Datetime
Нужно что бы мой класс-потомок My_Dattetime имел интерфейс, схожий с родителем. У родителя есть static метод createFromFormat, который возвращает инстанс Dattetime, а мне нужно My_Dattetime.

Решил переопределить createFromFormat:

PHP:
class My_Dattetime extends Datetime
{
	public static function createFromFormat($format, $time, DateTimeZone $timezone = null)
	{

	}
}
и получаю:
Strict standards: Declaration of My_Dattetime::createFromFormat() should be compatible with that of DateTime::createFromFormat() in D:\httpd\htdocs\localhost\www\phpinfo.php on line 13

Это баг или что это? Что я не так делаю? Почему он мне говорит, что декларация не такая??
 
Это не баг. Это компилятор тебе намекает, что прозрачно заменить наследуемый класс ты не сможешь, потому что изменил декларацию метода предка.
Это не варнинг, если что. Просто bad practice.
Или выключи E_STRICT, или следуй классическим практикам в разработке.
 
изменил декларацию метода предка.
где я её изменил?

Просто bad practice.
Или выключи E_STRICT, или следуй классическим практикам в разработке.
Не понял. Почему это плохая практика? Я НЕ изменил декларацию - она идентична родной - http://www.php.net/manual/en/datetime.createfromformat.php
 
Рефлексия показала, что дока врет :)
Твой класс
PHP:
Method [ <user, overwrites DateTime, prototype DateTime> static public method createFromFormat ] {
  @@ /var/www/cascade.localhost/public/class.php 7 - 10

  - Parameters [3] {
    Parameter #0 [ <required> $format ]
    Parameter #1 [ <required> $time ]
    Parameter #2 [ <optional> DateTimeZone or NULL $object = NULL ]
  }
}

Настоящий DateTime:
PHP:
Method [ <internal:date> static public method createFromFormat ] {

  - Parameters [3] {
    Parameter #0 [ <required> $format ]
    Parameter #1 [ <required> $time ]
    Parameter #2 [ <optional> $object ]
  }
}

Так что ты прав в своем негодовании %)
 
ОМГ
Спасибо, Флоппик! Я кстати вчера ночью вроде пробовал написать
PHP:
public static function createFromFormat($format, $time, $timezone = null)
и почему-то был уверен, что была та жа ошибка..
 
Сверху