Вот решил у себя в блоге разместить несколько понравившихся фоток. Это модель Darnah Morgan, автор фотографий Illusive Photography. Лицензия CC BY 2.0
Довольно часто, в учебной литературе для перебора массивов предлагают следующую конструкцию:
$array = range(0, 999999);
$time_start = microtime(TRUE);
for($i=0; $i<count($array); $i++){}
echo microtime(TRUE)-$time_start;
На первый взгляд все хорошо, но использовать такой код крайне не желательно. Дело в том, что на каждой итерации цикла, а если говорить точнее, при проверке условия, будет вызываться функция count(). Можно конечно видоизменить код следуюшим образом:
Это перевод http://tympanus.net/codrops/2011/12/01/6-questions-you-should-ask-yourself-when-choosing-fonts/
Если вы похожи на меня, то выбор шрифтов для вашего проекта обещает быть либо легкой, либо самой сложной задачей, с которой вы столкнетесь. Шрифты это гигантская часть любого дизайна, и они должны подбираться со всей ответственностью. Хороший выбор шрифтов может усиливать ваш дизайн, эффективно передавать идеи и цели сайта его посетителям. Плохой выбор может радикально изменить его и повлиять на то, как ваш сайт воспринимается пользователем.
Типографика действительно наука и многие дизайнеры изучают ее на протяжении всей карьеры. Но выбор эффективных шрифтов не требует глубокого изучения лигатур, глифов или высоты верхнего выноса. Вы просто должны задать себе несколько вопросов — хотя обучение всегда поможет в принятии трудных решений.
Вот типичная картина, которая наблюдается после установки операционной системы.

Сегодня я расскажу о простом способе настройки системного прокси в Windows 7. Итак, для просмотра текущего состояния прокси воспользуемся командой netsh winhttp show proxy.

Здесь мы видим, что система настроена на прямой доступ, без использования прокси. Для установки прокси служит команда netsh winhttp set proxy.
Недавно, я написал функцию для вычисления разности между двумя датами. Почитать об этом можно здесь. А спустя некоторое время, мне стало известно, что для этих целей в PHP 5.3 появилась встроенная функция date-diff. Сначала, я было расстроился, что потратил время на изобретение велосипеда, а затем решил проверить роботу этих двух функций. Моя идея заключалась в следующем. Генерировалось энное кол-во пар дат. Вычислялась разница между ними первым и вторым способом, а затем сравнивался результат.
Иногда перед разработчиком возникает задача в нахождении времени прошедшего между двумя датами. Я решил написать универсальную функцию для решения этой задачи. Она находит количество лет, месяцев, дней, часов, минут, секунд прошедших между двумя датами и возвращает их в виде массива.
На основе одной замечательной статьи (http://habrahabr.ru/blogs/ui/30560/) сделал jQuery плагин для стилизации файл-инпутов. Он позволяет заменить стандартный файл-инпут

следующей вещью:

В свое время я писал функцию для фильтрации введенного пользователем HTML кода на языке Perl. Если кому интересно почитать можно здесь. Но так, как Perl уже давно не мейнстрим я решил переписать все это дело на PHP.
Пользоваться фильтром нужно следующим образом. Сначала подключаем класс и создаем объект представляющий из себя фильтр.
require_once "html_filter_class.php";
$html_filter = new html_filter();
Сегодня я решил потратить немного времени и написать небольшую шпаргалку, с ссылками на ресурсы, которые смогут пригодиться веб разработчику. Я не претендую на то, чтобы разместить здесь огромный перечень ссылок по той или ной теме. Например, существует с десяток хороших IDE, и спорить о том какая из них лучше пожалуй бессмысленно. Каждый человек индивидуален, и у него есть свои предпочтения, свои вкусы. Ниже приведены лишь те ресурсы, которыми пользуюсь я. Надеюсь они будут полезны и вам.
Сегодня мне наконец-то удалось отыскать хороший jQuery плагин для скругления углов изображений, который корректно работает во всех основных браузерах, в том числе и в IE6. Плагин позволяет задавать радиус скругления для каждого из углов, а также, если необходимо, цвет и размер границы изображения. В общем это творение оставило у меня только положительные впечатления. Рекомендую всем.
Пусть у нас имеется следующий скрипт
$(document).ready(function(){
for(i=1; i<101; i++){$.get('test.php?n='+i)};
});
и файл test.php
<?php sleep(10) ?>
Этот скрипт должен одновременно выполнить сто AJAX запросов. Посмотрим как на самом деле обстоит дело в браузере Firefox.
На просторах интернета натолкнулся на один очень полезный плагин jQuery, предназначенный для создания индикаторов загрузки. Посмотреть плагин в действии можно на демо страничке. Но есть одно маленькое но. Дело в том, что этот плагин не работает в браузерах IE c версиями jQuery начиная с 1.4.3. Там возникает ошибка, при проверке поддержки VML браузером. Я немного допилил плагин, чтобы исправить это. Ссылки для скачивания ниже.
Пусть у нас есть массив элементов, для каждого из которых нужно последовательно выполнить AJAX запрос (новый запрос должен отправляться, как только завершиться предыдущий). На самом деле в асинхронной модели программирования это задача не такая уж легкая, как может показаться на первый взгляд.
Хочу поделиться небольшой функцией для рекурсивного обхода файлов в каталогах.
function get_files($dir = "."){
$files = array();
if ($handle = opendir($dir)) {
while (false !== ($item = readdir($handle))) {
if (is_file("$dir/$item")) {
$files[] = "$dir/$item";
}
elseif (is_dir("$dir/$item") && ($item != ".") && ($item != "..")){
$files = array_merge($files, get_files("$dir/$item"));
}
}
closedir($handle);
}
return $files;
}
/\ Можете ли вы точно сказать какой из этих двух знаков является слешем (косой чертой), а какой обратным слешем (обратной косой чертой)? Если нет, то этот пост для вас. В нем я расскажу о простом способе, благодаря которому вы больше никогда не будете путать эти два знака.
- Мир освещается солнцем, а человек — знанием.
- Не учись до старости, а учись до смерти.
- Чему учился, тому и пригодился.
- Учение в детстве, как резьба на камне.
- Наукой люди кормятся.
- Нужда учит, а барщина мучит.
- Знание да наука на вороту не виснут.
- Золото добывают из земли, а знания – из книги.
Недавно, мы с женой играли в "мозголом" на одноклассниках. Это такая игра, где задают вопрос, а к нему прилагается четыре варианта ответов, и нужно угадать правильный ответ (а-ля "Кто хочет стать миллионером?"). В общем к чему я все это. Нам попался вопрос: "С какой буквы чаще всего начинаются русские слова?". Мне сразу вспомнились пару моих статей на хабре, где я находил самую популярную букву русского языка, и где определял среднюю длину русского слова. И я подумал, почему бы в продолжении темы не написать еще один пост, только теперь не на хабре, а у себя в блоге. Итак, под катом ответ на вопрос из мозголома.
Вступление
Рано или поздно перед человеком, занимающимся веб-программированием возникает задача в фильтрации введенного пользователем HTML кода. Вот такая задача, однажды, встала и передо мной. Готового решения на тот момент мне найти не удалось. Вся информация, которую я откопал по этому вопросу, как обычно, ограничивалась советами, надо сделать так, надо сделать эдак, но конкретного, работающего решения, почему-то никто не предложил. Особенно порадовал один человек, который сказал, что если он и возьмется написать подобный фильтр, то только за большие деньги. В отличие от этого человека, в этом посте я во всех деталях расскажу как сделать фильтрацию введенного пользователем HTML кода, и в конце, вы получите работающий пример, который сможете применять в своих проектах.
Пришла мне как-то в голову мысль сделать загрузочную флэшку и решил я использовать для ее создания grub4dos. Это универсальный мультизагрузчик, основанный на GNU GRUB. Ниже я хочу поделиться своим опытом, и рассказать о некоторых проблемах, с которыми мне пришлось столкнуться. Сразу покажу окончательный результат, чтобы можно было определиться стоит ли читать этот пост до конца. При загрузке компьютера с флэшки будем иметь следующее.

Буду краток. Есть вот такой способ решения данной проблемы, но его нельзя использовать в случае с липким футером, потому что для контейнера не удастся задать высоту в процентах. А вот мой способ решения поставленной задачи, который, кстати, применяется на этом сайте. Так что пользуйтесь на здоровье друзья.
Как известно XHTML 1.0 Strict не позволяет использовать атрибут TARGET для ссылок. Это значит, что все ссылки, по умолчанию, открываются в том же окне. Лично я с этим не совсем согласен. По моему мнению, все ссылки внутри одного домена должны открываться в одном окне, а ссылки за пределами этого домена в новом окне.
Живет в интернете один сайт c простым японским названием karaoke.ru, и хорош он тем, что там можно записать свое исполнение песни, и выложить его на всеобщее обозрение. Посмотрите, что мне удалось там раскопать.
Что то в этом джойстике не так.

Давайте посмотрим внимательно.
Имеется колода 52 карты. Помощник предлагает зрителям выбрать из нее любые пять. Затем помощник выбирает из этих пяти четыре карты и по очереди показывает их фокуснику. После этого фокусник называет пятую карту, оставшуюся у помощника.