Недавние записи 
-
Компьютер
-
PHP
...also called "getting rid of RegExp"
There are many cases when instead of using more basic and much faster PHP functions
programmers use full-scale preg_*() functions of PHP. This article suggests solutions to
common cases when regular expressions can be avoided.
If you feel like I’ve missed an interesting case drop a comment below and I’ll include it into this article.
Similar post: Various format parsing functions for PHP.
Is a number?
«…»
|
Читать полностью
»
-
Компьютер
-
PHP
A review of all possible ways to scan a directory for files in PHP.
During my already long experience with PHP finding all files in a directory was one of
the few problems which I have solved each time differently. This short note is meant to
sumarize all I have done and bring up my latest version.
opendir & Dir
This is probably most traditional way – using opendir functions and theirs slightly more
recent (PHP 4+) OOP variant – the Dir class. Let's see how this is done:
Better coding practice would need a try..catch block like this one:
«…»
|
Читать полностью
»
-
Компьютер
-
PHP
With date('z') you can get the day of the year... but how to put it back?
Sometimes we need to get sequence number of a day from the year's start. We can do this
simply by calling date like this:
In other words, today's the 8th April 2011 and it's the 97th day from the beginning of the year.
This is good but how we reverse this and calculate date from a day's sequence number of a year?
My first try was to see if strptime can be helpful (this function converts a time
string like «2 Jan 2010» into timestamp). And I thought that this piece of code could solve
the problem in one shot:
«…»
|
Читать полностью
»
-
Компьютер
-
Мысли
The power of Arguments - store variables in your function's "static local scope"!
JavaScript is an unusual language in several ways: it doesn't have class tree
and inheritance as traditional languages do, it's pretty forgiving to syntax errors sometimes
(optional var, optional semicolons, etc.).
Among all this there's one thing rarely thought about. Each function is an object – it's
more or less known fact. But each function also receives an arguments objects – which
is not a simple array (you can find references at Mozilla DevCenter:
arguments,
Array).
It, however, behaves like one because it has the following array-like properties:
And here's how you can convert arguments into a real array:
But this is a child's play. Argumens has more properties than that!
«…»
|
Читать полностью
»
-
Компьютер
-
Мысли
This article tells how to encode numerical data to textual yet short representation.
The story
A few days ago I was writing a plugin for my blog engine
that was adding a nice feature of subscribing to new comments in some post or thread. It also
included a few scripts to allow users manage their subscriptions (to very least to let them
unsubscribe from threads).
Obviously, I needed some means to authenticate users so only the real owner of an e-mailbox can manage his subscriptions. For this I chose to use my favourite method which is easy
to handle:
- Have a secret phrase known to server-side only.
- Other info that we want to link together (for example, e-mail address).
- Now simply hash all this in one string using MD5 and get an irreversible secret phrase that, however, can be checked for validity – and only we can generate valid phrases because nobody but the server knows the secret ingredient – item #1.
In fact, this is very straightforward:
«…»
|
Читать полностью
»
-
Рисование
-
Illustrator
Сегодня я делал две служебные странички для моего движка блога
(на котором собственно этот блог и работает) и хотел нарисовать какие-нибудь забавные
иллюстрации, чтобы было интересно. Вот что получилось:
Обе картинки нарисовал в Illustrator CS5 Portable (сначала удивлялся, что даже
такой есть, но уже использую не первый месяц и работает хорошо). А вот потом в какой
дизайн они влились:
Если интересно, можно скачать обе иллюстрации (в .ai с совместимостью для CS3).
Копирайта нет, используйте как в public domain – хотя ссылки на автора всегда приветствуются :)
|
Показать эту запись
»
-
Сказки
-
Яростень
Очнувшись на земле человек попылался подняться, но понял, что не может – некая сила
давила на него сверху и чтобы просто приподнять голову нужно было приложить огромные усилия.
Наконец, это ему удалось и он смог осмотреть пространство перед собой и вокруг себя, докуда
хватало поворота шеи.
Помещение не изменилось: он видел всё те же круги и понижающийся к центру пол, арки по
бокам и ещё какие-то предметы, которые он никак не мог рассмотреть. Он поднял голову, чтобы
понять, далеко ли находится арка, через которую он вошёл, но не смог запрокинуть голову
так далеко и вместо этого пролежал в такой нелепой позе, изучая потолок, который был почти
не различим в бардовом полумраке.
Когда человек опустил голову вниз, то взляд его тут же приковал к себе бело-голубой шар
в центре. Человек начал любоваться им, как вдруг на него налетели воспоминания.
Он вспомнил всё: страшные раны в ногах, которые не только грозили занятию всей его жизни,но и внушали страх того, что до её конца он останется таким, влача безрадостное существование.
Одновременно навалились все кошмары покалеченной психики из-за чрезмерного увлечения камнем
– сперва от безысходности своей болезни, а потом затягивающее само по нарастающей.
Человек вторично почувствовал себя придавленным к земле реалиями жизни, разрушенной и внешне,
и изнутри. Он больше не решался поднять головы и готов был пролежать в этом месте без времени
пока не умрёт.
Так он и лежал, переживая заного все проблемы, которые дбрались до него даже здесь, в истоке.
«…»
|
Читать полностью
»
-
Мои проги
-
Delphi
Задача: игра за шесть дней. Статус: выполнено.
Два дня назад, в субботу, было день рождение одного моего друга. За неделю до этого я
задумался о том, что бы ему подарить – пожалуй, самый сложный процесс во всём этом деле :)
Вдруг я вспомнил, что незадолго до этого он мне мельком рассказал о своей идее аркадной
игры – с тем расчётом, чтобы игра была незаморочистой, но в то же время необычной.
Вкратце, идея заключалась в том, что игрок занимается выращиванием цветов. Сначала у него
только один цветок, который, допустим, моежт цвести и создавать новые типы. Тут же рядом
растут сорняки, как-то влияющие на цветы игрока, плюс разные типы почв, плюс события вроде
нападения вредителей и тому подобное.
И я решил подхватить эту идею – судя по опыту яростеня у меня это получается неплохо :)
В общем, за 6 дней до часа Икс я начал писать эту несложную аркаду и пару дней спустя
понял, что поставил себе этакий «developer's challenge». Вообще, это был первый такой интенсивный
блицкриг, который я себе устроил (не менее примечательный Швак
– всё же более обстоятельный проект).
Получившуюся игру я с первого дня спонтанно стал называть Hanagatari (花語) – история
цветов (или цветка, кому как больше нравится – в японском нет множественного числа).
«…»
|
Читать полностью
»
Комментарии
Снятие DRM-защиты с AZW/PRC для Amazon Kindle
FileDrop – cross-browser JavaScript Drag & Drop file upload
Multidomain mail system with Postfix & Cyrus
How to catch fatal errors in PHP
Определение прозрачности пикселя в Photoshop
DBNinja for localhost
How to disable Skype 5 auto update