| Новости | FAQ | Авторы | Документация | В действии | Библиотека |
| Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
Maxx 09.10.2012 21:10 / 09.10.2012 21:16
Лирическое отступление. В какой то день пришла сотрудница и сказала что в таблице договоров, которые она вносит в базу у всех договоров, в том числе ранее введенных, одновременно пропали все даты. Это было странно, потому что код не трогался, на сервере проблем не наблюдалось, а сама программка работала давно и успешно. Полез ковыряться...@print_date[d]
^if(!($d is date)){
^try{
$d[^date::create[$d]]
}{
$exception.handled(1)
}
}
^if($d is date){
$result[${d.day}.${d.month}.${d.year}]
}На самый первый взгляд ничего в нем такого криминального вроде не нашлось, но тем не менее именно он почему то даты перестал печатать, все. Пока я искал, девушка внесла еще один договор, и все даты появились назад :)$d1[0000-00-00] $d2[2012-10-10] $d3[2012-10-12] ^print_date[$d1] ^print_date[$d2] ^print_date[$d3] --> пусто ^print_date[$d3] ^print_date[$d1] ^print_date[$d2] --> 12.10.2012 10.10.2012Быстро стало понятно что дело в этом:
Каждый метод должен будет или возвращать результат через $result во всех вариантах своего выполнения или не использовать $result вовсе. Внимание, это несовместимое с предыдущей версией изменение и вам необходимо исправить ваш код.И стало грустно.