Наткнулся в чужом коде на очередной WTF. Вместо встроенной функции nl2br() использовалась конструкция
$message = str_replace("\n", "<br />", $message);
Прежде чем что-то написать откройте документацию PHP или посмотрите в гугле – возможно там вы найдете готовое решение вашей проблемы. У PHP имеется огромное количество встроенных функций для решения многих задач. Есть даже встроенная функция easter_date() для расчета дня Пасхи для любого года
<?php echo date("M-d-Y", easter_date(2000)); // Apr-23-2000 echo date("M-d-Y", easter_date(2001)); // Apr-15-2001 ?>
Не изобретайте велосипед!
5.08.2009
Какая связь между
$message = str_replace("\n", "", $message);
и nl2br()?блин, там <br /> во втором параметре выпал.
easter_date()
Warning: This function will generate a warning if the year is outside of the range for UNIX timestamps (i.e. before 1970 or after 2037).
Работает в диапазоне 1970-2037 из-за ограничения UNIX timestamp.
Верно-то оно верно. Только иногда быстрее сам напишешь и даже не подумаешь, что в пхп такое может быть встроено.
Чего-то я так и не понял про пасху o_O
При чем тут она вообще?
Пасха в 2000 году была 30 апреля, а не 23.
Да ничего непонятного. Функция easter_date()- рассчитывает КАТОЛИЧЕСКУЮ Пасху, а не ПРАВОСЛАВНУЮ. А даты у них не всегда совпадают.