Pull to refresh

Comments 46

Топик очень полезен, но хаьракат бы не помешал =)
*в сторону* Эх, а вот бы весь PHP стал объектно-ориентированным.
все в этом направлении и двигается.
считаю появление spl подтверждением этого...
В таком случае он потеряет часть своих приверженцев. Довольно существенную часть. Насчёт даты и времени для вывода текущей даты мне всё же нравится больше date('d-m-Y')
как писать - личное дело разработчка. Тем более процедурный синтаксис никто выбрасывать не собирался
Про метод modify, первое или второе удобнее? С чем соглашаться? :)
с modify... ИМХО, через него удобнее
> Реализация на php4 была бы такой:
>
> echo date( 'Y-m-d' ); //2008-07-16
> echo date( 'Y-m-d', time() + ( 7*24*3600 ) );//2008-07-23

Или такой

echo date('Y-m-d', strtotime("+1 week"));

На мой взгляд - ничего нового, кроме как того, что все это классом оформлено.
это плохой пример, в DateTime можно не просто текущий time(), а любую дату отмодифицировать. Что удобно.
а что мешает в strtotime передать вторым параметром любую дату? ИМХО всего лишь классовая обертка, а что использовать решать уже конкретно разработчику)
спасибо, не знал. тогда и правда классовая обертка.
О, а я об этом хотел написать автору :)
А оф мануал есть? если есть, можно ссылку?
UFO just landed and posted this here
Так это ж сам php.net зачем-то географию наводит. Странно это — у гугла вон скока датацентров, а урлы он не портит.
ммм... хм... а что здесь есть того, чего нету в мануале и чего не найти там с первого клика?
я, например, уже давно привык пользоваться date() и компанией - потому даже в мыслях небыло искать что-то другое.
в мануале всё есть - это да. но просто не каждый в него полезет искать что-нибудь новое вместо привычных функций.
ок, а зачем надо было искать что-то, кроме привычных функций, если объектная реализация даты не дает ничего нового? :)
у меня нет ответа на этот вопрос — я редко даты пользую :)
а вот тов. alagar немного ниже дал ответ. на любителя, вобщем.
объектная реализация даты дает возможность сделать:
class MyDate extends DateTime {}
О чем в топике нету ни слова :)
К тому же от такого наследования особой пользы нет - операторы в php перегружать нельзя и следовательно за неимением встроенной реализации нельзя сделать так:
$t1 = new DateTime('14:15');
$t2 = new DateTime('0:15');
$t3 = $t1 + $t2;
О чем в топике нету ни слова :)

а развет то, что это класс не значит, что его можно наследовать?
но можно сделать так:
class MyDate extends DateTime {
public function plus( MyDate $arg ) {}
}
Там этого класса нет, то то и оно. Только в релиз-нотах PHP5.2 упоминание.
По тому, что:
With the advent of PHP 5.2.x, there are object representations of the date and timezone, named DateTime and DateTimeZone respectively. The methods map to existing procedural date functions.
Этого упоминания я тоже там не нашёл :)
Нет, я русский язык имел в виду.

Впрочем, неважно.
спасибо, не знал.
вот ещё бы перенести этот топик в blog/php...
Небольшая поправка. Классы доступны для PHP >= 5.1.0.
Согласен, на если посмотреть ChangeLog - вы увидите, что в ветке 5.2 было исправлено несколько багов связанных с этим классом
ну не сказал бы что так удобнее лично мне - наверное дело привычки просто...
интересно его полностью погоняли на тестах ?? помниться когда zend framework заимплементил такую штуквино то при убирании одного дня от числа допустим 01.08.2007 получалось не 31.07.2008 а все тоже 01.08.2008 :)
Спасибо прикольный топик. Вроде от date() отличается не сильно, но как ни крути с классом гораздо приятней работать.
всё круто, только на офсайте чёт не нашёл описания объектов :(
Топик в топик!
Чем то JavaScript напомнило :)
Коммент написал со второй попытки вышел 3.0.1 Лис! Ура!
Интересно было бы сравнить производительность этих классов с подобной реализцией через date()
Ещё не надоело сравнивать print и echo? Те кто захочет использовать этот класс будут его использовать, а не сравнивать что быстрее методы или функции.
А как насчёт хранения дат вне 32-битных пределов — есть такое в этом классе?
а ещё с 5.1.3 появилась функция date_parse (http://ru2.php.net/manual/ru/function.date-parse.php) которая выдаёт ассоциативный массив с кусками даты
Sign up to leave a comment.

Articles