Pull to refresh

Comments 8

UFO landed and left these words here
//Prepare settings into correct array for initialize library
if ($patern_settings)
{
foreach ($patern_settings as $key => $value)
{
if (!$value)
{
if ($default_settings[$key])
{
$patern_settings[$key] = $default_settings[$key];
}
}
}
}

Я правильно понимаю что если какая-то настройка $patern_settings (pattern?) при приведении к булевскому типу дает false, то она заменяется на дефолтную? Т.е. передать 0 или false или пустую строку в настройках нельзя в принципе.

Зачем foreach, когда достаточно array_merge($default_settings, $patern_settings)?

Да, разница в результатах у вашего foreach и у array_merge есть. В этом случае в результирующем массиве будут элементы с ключами, которых изначально могло не быть в $patern_settings, но были в $default_settings. Но, насколько я понимаю в колбасных обрезках, это именно то что требуется при слиянии дефолтных и передеанных настроек.
1. Когда вы отправляете мыло в пределах процесса web-сервера (проще говоря — непосредственно при обработке запроса) — бог убивает котенка.
2. Слияние массивов через foreach — сами знаете, что это. Андрей не Фея, ему еще долго грызть гранитную палочку магии.
3. В большинстве случаев else-блоки не нужны.
Дальше не смотред.
В общем, решение далеко не так красиво, как вы о нем пишете.
oтправляете мыло в пределах процесса web-сервера

это в целом, или вы имеете ввиду именно процессы типа рассылок?
А я думаю, это лучший способ валидации, например, email во время регистрации. То есть часто такая отправка почты вполне приемлема, и даже полезна.
Наверно, имеется ввиду, что отправку почты надо ставить в очередь и рассылать отдельным процессом, а не в рамках выполнения скрипта, обрабатывающего запрос пользователя, в вашем случае регистрации.
Наверное, а я говорю что во время регистрации таким образом проще всего проверить валидность email, и задержка во время такой разовой операции не критична.
Если имеется подписка на новые сообщения в треде — то да, в таком случае логичнее составлять очередь и отправлять отдельно.
И еще, ваша реализация не умеет отсылать HTML и plain text версии одного письма, а также аттачи, в том числе аттачи картинок для HTML-версии, несмотря на то, что на скринах WYSIWYG-редактор шаблонов имеет возможность вставки картинок.

Не знаю умеет ли это библиотека CodeIgniter Email, но точно знаю, что есть библиотеки которые умеют.

Sign up to leave a comment.