PHP настройка временной зоны (date.timezone)


Ошибка возникает, если не настроена временная зона для PHP:
Warning: date() [function.date]: It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'Asia/Dubai' for 'GST/4,0/no DST' instead in /Users/vovan/blah-blah-blah/vars.class on line 43

Ищем как правильно пишется наша зона на офф сайте: Список поддерживаемых временных зон

Теперь внесем правки в конфиг PHP. Чтобы найти где он расположен, воспользуемся командой locate:
$ locate php.ini
/Applications/Zend/ZendStudio-5.5.0/bin/php4/php.ini
/Applications/Zend/ZendStudio-5.5.0/bin/php5/php.ini
/Applications/Zend/ZendStudio-5.5.0/bin/phpdocumentor/php.ini
/Users/vovan/php.ini
/opt/local/etc/php5/php.ini
/opt/local/etc/php5/php.ini-development
/opt/local/etc/php5/php.ini-production
/opt/local/etc/php5/php.ini.bak
/private/etc/php.ini.default
Редактируем наши настройки:
$ sudo nano /Users/vovan/php.ini
Включаем поиск: Ctrl+w, пишим слово zone, жемем Enter:
[Date]
; Defines the default timezone used by the date functions
;date.timezone =
Раскомментируем строку с настройкой, и вставляем нужную зону:
[Date]
; Defines the default timezone used by the date functions
date.timezone = "Asia/Dubai"
Перезапускаем апач:
$ sudo apachectl restart

Баннеры на фоне сайта


Как поставить баннеры на фон страницы сайта? Без горизонтальной прокрутки? Элементарно: [link].

Пример полностью скопирован с Яндекса.

Быстрая диагностика HTML кода

Отображение недочетов на странице

Часто бывает так, что по окончании процесса верстки и сборки сайта, забываешь проверить код на наличие недочетов. Таких как ссылки со значением атрибута href="#" или логотип без тайтла.
Именно для поиска таких мест и придумали диагностические css стили.

Так как каждый раз вставлять руками данный стиль дело довольно расточительное, я написал букмарклет кнопочку для браузера, нажав которую, вы увидите все самое интересное.
bug!

javascript:(function addStylesheetRules(){var decls=[['div:empty,span:empty,li:empty,p:empty,td:empty,th:empty',['padding','20px'],['outline','5px dotted yellow',true]],['*[alt=""],*[title=""],*[class=""],*[id=""],a[href=""],a[href="#"]',['outline','5px solid yellow',true]],['applet,basefont,center,dir,font,isindex,menu,s,strike,u',['outline','5px dotted red',true]],['*[background],*[bgcolor],*[clear],*[color],*[compact],*[noshade],*[nowrap],*[size],*[start],*[bottommargin],*[leftmargin],*[rightmargin],*[topmargin],*[marginheight],*[marginwidth],*[alink],*[link],*[text],*[vlink],*[align],*[valign],*[hspace],*[vspace],*[height],*[width],ul[type],ol[type],li[type]',['outline','5px solid red',true]],['input[type="button"],big,tt',['outline','5px dotted #33FF00',true]],['*[outline],a[target],table[cellpadding],table[cellspacing],*[name]',['outline','5px solid #33FF00',true]]];var style=document.createElement('style');document.getElementsByTagName('head')[0].appendChild(style);if(!window.createPopup){style.appendChild(document.createTextNode(''));}var s=document.styleSheets[document.styleSheets.length-1];for(var i=0,dl=decls.length;i<dl;i++){var j=1,decl=decls[i],selector=decl[0],rulesStr='';if(Object.prototype.toString.call(decl[1][0])==='[object Array]'){decl=decl[1];j=0;}for(var rl=decl.length;j<rl;j++){var rule=decl[j];rulesStr+=rule[0]+':'+rule[1]+(rule[2]?'!important':'')+';\n';}if(s.insertRule){s.insertRule(selector+'{'+rulesStr+'}',s.cssRules.length);}else{s.addRule(selector,rulesStr,-1);}}})();void(0);

Функцию вставки стилей я взял с сайта MDN [link] и немного обфусцировал.

SVN открыть в редакторе все конфликты

$ svn st
C    about.html
C    css/style.css
C    index.html

Для решения конфликтов после мержа, я использую NetBeans, в котором, собственно и работаю над проектами. Чтобы не открывать конфликтные файлы по-одному, сделал небольшой алиас:

alias stcn="svn st | awk '/^C/{ print \$2 }' | xargs '/Applications/NetBeans/NetBeans 7.1.1.app/Contents/Resources/NetBeans/bin/netbeans' -J-Dline.separator=LF"
Под катом описание работы скрипта.

Проблема схлопывания при float: left


Есть несколько способов борьбы со схлопыванием родительского блока.
Пример проблемы

Обновлено(20.7.12): классический clear_fix заменен на group

My Book Live Ubuntu бэкап

  1. Настраиваем статический IP для хранилища Настройки → Сеть (но лучше сделать это через маршрутизатор, а на хранилище оставить DHCP).

    Настройка статического IP