Веб программирование

Веб программирование

PHP: Игра зоркий глаз ревьювера

Предлагаю теперь поиграть со мной и найти ошибки/улучшения в следующих примерах. Если ошибки не видно — посмотрите еще раз и напишите мне комментарий

Пример 1

$cache_title = 'lookup_' . $t . '_' . mb_strtolower($q) 
  . '_' . $location_id . '_' . $location . ($this->is_full_search) ? '_full' : '';

Пример 2

if ($new_pass != $new_pass_repeat 
  || in_array($pass, array($new_pass, $new_pass_repeat)) 
  || mb_strlen($new_pass, 'UTF-8') < 4) {

Пример 3

$query = 'SELECT json_agg(p.*) FROM (
  SELECT id, name, url, friendly
  FROM ' . SITES_TABLE . ' as s
  WHERE s.id<>' . (int)$id . ' AND s.url_host=' . $url . '\' 
  AND s.status IN (' . STATUS_SITE_LIST . ')
  ) AS p
LIMIT 25';
$return['url_clones'] = json_decode(DB::query($query), true);

Пример 4

UPDATE content.sites_contacts AS u 
SET (zip,address,phone,map,fax,fio_org,email_org,description_full)=(NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL) 
WHERE (
  SELECT sub.match FROM (SELECT (content.sites_contacts.*)=(u.*) AS MATCH FROM content.sites
  LEFT JOIN content.sites_contacts ON content.sites_contacts.id_site=content.sites.id 
  WHERE content.sites.id=17217) AS sub
)

Пример 5

$conditions = $conditions ? $conditions : '';
IF (is_array($conditions)) {
	$conditions = '(' . implode(') AND (', $conditions) . ')';
}

Веб программирование

Читабельный код — залог успеха

Не важно на каком языке и что Вы пишите — рано или поздно Вам придется любой свой код менять и улучшать. Конечно это при условии что Вы не пишите одноразовые салфетки — тогда да, можно использовать и выкинуть, но выкидывать код клиенту не нужно)

Это примеры нехорошего кода, который нужно искоренять у себя из подкорочки даже.

Продолжить чтение…


Веб программирование

GoogleApi+ Spreadsheet + PHP : Практика маленьких и полезных клиенту скриптов

Часто бывает, что ручная работа может занять недели, а программист — за день автоматизировать ее и сделать приятной. С наличием кучи библиотек в репозиториях гитхаба — важно выбрать нужную и рабочую. И правильно постучать молотком

Постановка задачи этого примера: клиент сделал огромную таблицу в гугл-документах, но забыл туда вставить важное поле (и приложил в письме еще большую таблицу со связкой «код товара» — «поле»). Клиенту приятно, мне не долго — все счастливы и веселы.

Продолжить чтение…


Веб программирование

Qt: Иногда десктоп клиент — это то что нужно клиенту

Он может быть простым — главное чтобы был функциональным, т.е. решал «боль» администратора сайта. Если Вам все время надо мониторить кучу ресурсов — то для этого подойдет небольшой, специально заточенный инструмент. Так мы решаем вопрос кликов и тормозов в веб-интерфейсах, загружая только новые данные в реальное приложение. Нельзя заставлять человека часами туда сюда бегать по страницам, если один программист за неделю может написать интерфейс, который сводит эту работу к пяти минутам чтения.

Метки:


Веб программирование

PHP: Перехват неперехватываемого или как сделать try catch warning: mail

Немного из жизни: есть у нас красивая, отличная конструкция выполнения try catch, ошибки которой должны отправляться в живом режиме на емейл ответственного программиста. Без дополнительных настроек великолепно работает. Но вот иногда — не часто, но иногда — мейл сервер тоже не очень хорошо работает, а функция mail самая бронебойная (кстати как и дефолтные соединения с базой, и еще парочка невероятно простых, нужных и вредных функций) — она дает сообщение о ошибке, но ошибку не генерирует.

Продолжить чтение…

Метки: