О блоге
программирование, системное, прикладное, десктоп приложения
Администраторы (1)
Модераторы (0)
Модераторов здесь не замеченоЧитатели (14)
akhmetov dark_barker kinbot marselester burkozabr DragonDesign AlexMcArrow me2 Irbis sashase Crash eldar hr-it Sik07 апреля 2010
MD5, SHA1, UNIQID для генерации уникальных значений
В целом задачи как таковой затестировать скорость генерации не было (я сразу выбрал md5 изначально), но попоже захотелось быстренький на глаз сделать тестик. Что же быстрее генерит «уникальные» значения, хэширует и т.п.
Где это интересно и применимо? Пока я только увидел в системах кэширования, именно там порой много раз приходится использовать хэш-функцию для генерации например уникального ключа соответствующего нашему запросу, названию файла, адресу страницы, блока и т.п.
Читать далее →
Где это интересно и применимо? Пока я только увидел в системах кэширования, именно там порой много раз приходится использовать хэш-функцию для генерации например уникального ключа соответствующего нашему запросу, названию файла, адресу страницы, блока и т.п.
Читать далее →
11 марта 2010
CodeIgniter в 2ой версии переходит в Mercurial под крылом сервиса BitBucket!
Странная конечно новость и так последнее время все в ожидании выхода CI 2, так как уже подсмотрели частички в релизах ExpressionEngine 2.В целом вот EllisLab переходит на Mercurial, Assembla, BitBUcket и CodeIgniter 2 теперь на BitBucket.
Переход на Mercurial в целом понятен, хотят тянуть разные ветки децентрализованно. Только почему не GIT, этого я не понял, кроме общего врага в сабвершене и то, что они больше в команде «любят» платонически Меркуриал — больше объяснений нет.
Читать далее →
17 февраля 2010
JetBrains Web IDE Public Preview
JetBrains WebStorm & PhpStorm are two Integrated Development Environments for web programming, providing a unique user experience for editing HTML, CSS, JavaScript, XMl, as well as for working with VCS and SQL. PhpStorm is also a professional PHP IDE offering advanced PHP development support.
10 февраля 2010
CodeIgniter + HMVC маленький багфикс
Знаете, есть маленькая неприятность обнаруженная совсем не вовремя.В общих чертах у последнего CodeIgniter 1.7.2 загруженного из SVN и HMVC библиотеки для модульности (вы же надеюсь её используете если работаете с CI?) при РУЧНОЙ загрузки и подключении к базе данных есть баг, просто не грузится класс и не создается подключение.
Как показало «расследование» с пристрастием, ошибку содержит именно HMVC.
Давайте исправим. Открываем наш файл Controller.php из папки application/libraries нашего приложения. находим
public function database($params = '', $return = FALSE, $active_record = FALSE) {и правим на
public function database($params = '', $return = FALSE, $active_record = <b>NULL</b>) {можно было бы сохранить и всё бы заработало, но всё же код лишний присутствует и пугает своей бредовой старостью и неуважением к типам
дальше уничтожаем строку
if (class_exists('CI_DB', FALSE) AND $return == FALSE AND $active_record == FALSE)
return;и заменяем на вот эти две строки
$CI =& get_instance();
if (class_exists('CI_DB', TRUE) AND ($return === FALSE) AND ($active_record === NULL) AND isset($CI->db) AND is_object($CI->db)) return FALSE;
Всё, можно смело запускать и радоваться загружая свои любимые профили баз как захочется
$this->load->database( 'production' );
09 февраля 2010
Ускорение PHP скриптов (для нуба)
Общеизвестный факт, что PHP это такое средство разработки домашних страниц, что совершенно исключает его применение для крупных проектов. Но с годами домашняя страничка выросла, а время на переписывание всего с нуля взять неоткуда. Пришлось изменить название языка и обвешиваться инфраструктурой, чтобы получить какой то компромисс в производительности.Читать далее →
21 января 2010
Как удалить из строки все буквы кроме некоторых?
Иногда возникает задача удалить из строки все символы кроме некоторых. На мой взгляд для этой задачи регулярные выражения в самый раз задуманы.
для Oracle
Для углубления в тему регулярных выражений в Oracle следует почитать это.
для C#
Для .Net кодеров полезно прочитать — Регулярные выражения в .NET Framework
для Oracle
select regexp_replace('АаБбВвГгДдЕеЁёЖжЗзИиЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯя','[^кя]','',1,0,'i') from dual;Для углубления в тему регулярных выражений в Oracle следует почитать это.
для C#
Regex r = new Regex("[^кя]*",RegexOptions.IgnoreCase);
Console.WriteLine(r.Replace("АаБбВвГгДдЕеЁёЖжЗзИиЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯя", ""));
Для .Net кодеров полезно прочитать — Регулярные выражения в .NET Framework
21 января 2010
Как получить имя колонки таблицы на которую мапится свойство NHibernate класса?
How to Get Field's Name from property?
Понадобилось мне получить в runtime имя колонки таблицы на которую мапится NHibernate объект. Вот и наваял хелпер для этого.
Пример использования
Понадобилось мне получить в runtime имя колонки таблицы на которую мапится NHibernate объект. Вот и наваял хелпер для этого.
public class NHibernateHelper
{
private ISessionFactory _factory;
/// <summary>
/// Конструктор
/// </summary>
/// <param name="factory"></param>
public NHibernateHelper(ISessionFactory factory)
{
if (factory == null) throw new ArgumentNullException("factory");
_factory = factory;
}
/// <summary>
/// Метод возвращает название колонки таблицы на которую мапится свойство
/// </summary>
/// <typeparam name="T">NHibernate класс</typeparam>
/// <param name="propertyName">Имя свойства</param>
/// <returns>Имя колонки таблицы</returns>
public string TableColumn<T>(string propertyName) where T: class
{
SingleTableEntityPersister persister = (SingleTableEntityPersister)_factory.GetClassMetadata(typeof(T)); ;
return persister.GetPropertyColumnNames(propertyName)[0];
}
}
Пример использования
Helpers.NHibernateHelper entityHelper = new Helpers.NHibernateHelper(Domain.SessionFactory);
entityHelper.TableColumn<DocumentType>("FormatSerNum");
30 декабря 2009
PDO и маленькая проблема placeholder'а и мнимых типов в PHP
В целом, как-то неожиданно и совершенно не вовремя всплыла у меня проблема на пару часов, которые пришлось отвлекаться и разбираться с непонятной «фигней».
Читать далее →
Читать далее →
24 декабря 2009
Получение GEO данных по IP на Drupal 6.х
- написал: DragonDesign
- 97
- 6
В продолжении статьи «Получение GEO данных по IP» камрада МраКа, напишу как это делается в Drupal 6.x
В небольшом стартапе http://www.smstariff.ru было необходимо сделать так, чтобы страна была выбрана сразу.
Читать далее →
В небольшом стартапе http://www.smstariff.ru было необходимо сделать так, чтобы страна была выбрана сразу.
Читать далее →
19 декабря 2009
Получени GEO данных по IP
В целом простая задача, возникла у меня недавно для получения данных регистрирующегося пользователя выявить его страну, город и его часовой пояс.
Конечно можно решать разными способами, загрузить себе базу с кучей ip данных и получать из неё, быстро и удобно, но проблема, что придётся заниматься поддержанием базы в актуальном состоянии. Я как человек ленивый, хотел бы упростить задачу и нашел веб-сервис, который отдаёт по запросу на ip адрес данные в 2х форматах, JSON и XML. Так как JSON мне как-то ближе и проще, то был набросан быстро класс старающийся как бы тише и спокойно отдать мне информацию по IP.
Класс и короткий пример прилагаю, юзайте на здоровье так сказать.
Читать далее →
Конечно можно решать разными способами, загрузить себе базу с кучей ip данных и получать из неё, быстро и удобно, но проблема, что придётся заниматься поддержанием базы в актуальном состоянии. Я как человек ленивый, хотел бы упростить задачу и нашел веб-сервис, который отдаёт по запросу на ip адрес данные в 2х форматах, JSON и XML. Так как JSON мне как-то ближе и проще, то был набросан быстро класс старающийся как бы тише и спокойно отдать мне информацию по IP.
Класс и короткий пример прилагаю, юзайте на здоровье так сказать.
Читать далее →
15 декабря 2009
Ресайз изображений
В общем целом, существует два подхода к ресайзу изображений. И оба имеют как плюсы, так и минусы.
Читать далее →
Читать далее →
03 декабря 2009
Приколюхи-коротышки
Две забавки по языкам, недавно прикалывались на одном, местном форуме, наверное это победители по короткости выполняемые исходники не в консоли так сказать…
Читать далее →
Читать далее →
03 декабря 2009
Определение нажатия комбинации клавиш средствами BIOS на ассемблере
- написал: marselester
- 264
- 10
По учебе понадобилось написать программу на ассемблере, которая должна
распознать нажатие «горячей» комбинации клавиш LeftCtrl+RightShift+F3
и реагировать на него звуковым сигналом. Информации/примеров по этой теме маловато,
по этому решил опубликовать свою программку.
Читать далее →
распознать нажатие «горячей» комбинации клавиш LeftCtrl+RightShift+F3
и реагировать на него звуковым сигналом. Информации/примеров по этой теме маловато,
по этому решил опубликовать свою программку.
Читать далее →