Очередной шаг копирайтерства с маразматичесими последствиями.
Такими темпами чтение не лицензионных новостей будет приравненно к цыфровому пиратству.
А заплатит за все, какая нибудь бабушка, которую в судовом порядке обязуют выплатить 10 000 долларов за каждую пересказанную новость во дворе без лицензии на ето.
Кстати ето хорошо что они перешли к версии 1.8, так как исправить самые глупые баги обещали именно в 1.8.
Версию 1.7.2 использовать на практике без хаков пока сложно, особенно если комбинировать разные виджеты с использованием AJAX.
Было время намучался с етим CURRENT_TIMESTAMP и совсем запутался в часовых поясах, так как сервер был в штатах и имел необычную конфигурацию.
Как указать часовой пояс сервера в php все понятно, а вот с базой данных пришлось изощьрятся с помощью CONVERT_TZ, DATE_ADD, DATE_SUB так как доступа к конфигурации БД не предусматривалось.
Решил везде использовать DATETIME и дать возможность PHP самому указивать сколько времени.
Мне тоже етого метода нехватает. Ето полезно в абстрактных класах которые вызываются статически, в моем случаи ето абстрактный класс Extention которого наследуют Widget и Module соответственно каждый из них имеет свои параметры.
А пока приходится через debug_backtrace() извлекать.
Пытался но с 3х попыток не подружился полностью, решил собрать собственный велосипед на магнитной подушке %)
Может вы обьясните тогда, как воспользоваться тем же методом TimeHelper::convert($time,$ofset);
без классов AppHelper, Helper, Overloadable, Object?
А в своем примере я хотел подчеркнуть что serverOffset() целессобразней вызывать статически так как к обьекту она никакого отношения не имеет да и умножать 60*60 безсмысленная трата ресурсов.
Согласен с вами, особо не углублялся в архитектуру кейка но метод наследования классов там немного закручен и не так очевиден как в зенде. Меня раздражает тот факт что в большинстве случаев необходимо создавать обьект перед тем как вызвать какой нибудь метод скажем из хелперов, хотя ничего не мешает ему вызыватся статически.
вот пример:
function convert($serverTime, $userOffset) {
$serverOffset = $this->serverOffset();
$gmtTime = $serverTime — $serverOffset;
$userTime = $gmtTime + $userOffset * (60*60);
return $userTime;
}
почему бы не сделать так:
А так, скрипт весьма неплохой.
Такими темпами чтение не лицензионных новостей будет приравненно к цыфровому пиратству.
А заплатит за все, какая нибудь бабушка, которую в судовом порядке обязуют выплатить 10 000 долларов за каждую пересказанную новость во дворе без лицензии на ето.
Версию 1.7.2 использовать на практике без хаков пока сложно, особенно если комбинировать разные виджеты с использованием AJAX.
Как указать часовой пояс сервера в php все понятно, а вот с базой данных пришлось изощьрятся с помощью CONVERT_TZ, DATE_ADD, DATE_SUB так как доступа к конфигурации БД не предусматривалось.
Решил везде использовать DATETIME и дать возможность PHP самому указивать сколько времени.
А пока приходится через debug_backtrace() извлекать.
Может вы обьясните тогда, как воспользоваться тем же методом TimeHelper::convert($time,$ofset);
без классов AppHelper, Helper, Overloadable, Object?
А в своем примере я хотел подчеркнуть что serverOffset() целессобразней вызывать статически так как к обьекту она никакого отношения не имеет да и умножать 60*60 безсмысленная трата ресурсов.
вот пример:
function convert($serverTime, $userOffset) {
$serverOffset = $this->serverOffset();
$gmtTime = $serverTime — $serverOffset;
$userTime = $gmtTime + $userOffset * (60*60);
return $userTime;
}
почему бы не сделать так:
function convert($serverTime, $userOffset) {
return ($serverTime — self::serverOffset()) + $userOffset * 3600;
}