ВыходВход

Меню сайта

Разделы дневника
Жизненное [21]
О жизни...
Работа [5]
Заметки о работе и в части касающейся
Программирование [9]
Заметки по программированию
Интернет [8]
Интересности, замечания, мысли...
Всяко-разно [5]
Но красиво...
Лирика [21]
Иногда я тоже пишу стихи

Календарь
«  Апрель 2024  »
ПнВтСрЧтПтСбВс
1234567
891011121314
15161718192021
22232425262728
2930

Меню пользователя

Поиск по дневнику

Друзья сайта

Следы на золе
» Программирование
$str =~ s/[\<\x3C][\/\s]*(?:table|spacer|o|tbody|h1|h2|h3|h4
|h5|h6|tr|td|img|iframe|span|pre|div|a|b|p|strong|i
|s|br|\?xml|font|hr|ol|li |ul|BLOCKQUOTE|em|u)
(?:\>|(?:\:|\s)[^\>\x3E]*[\>\x3E])//gim;

P.S. Все-таки нужный...

Категория: Программирование | Просмотров: 1163 | Добавил: phoinix | Дата: 2006-05-16

Надо же с первого раза получилось написать рег, который выбирает имя файла из пути:

/^.*(?:\\|\/)([^\\\/]*?)$/

А еще какой-то гад стащил мою книгу "Регулярные выражения" 2-е издание от O'Really

Категория: Программирование | Просмотров: 860 | Добавил: phoinix | Дата: 2005-12-07

Код Perl:
sub _move_unit { 
my ($self, $data) = @_;
if ($data->{'near'} >= $data->{'left'} && $data->{'near'} <= $data->{'right'}) {return 0}
my $skew_tree = $data->{'right'} - $data->{'left'} + 1;
my $skew_level = $data->{'level_new'} - $data->{'level'};
if ($data->{'right'} < $data->{'near'}) {
my $skew_edit = $data->{'near'} - $data->{'left'} + 1 - $skew_tree;
$self->{'DBI'}->do('UPDATE '.$self->{'table'}.
' SET '.
$self->{'left'}.' = CASE WHEN '.$self->{'right'}.' <= '.$data->{'right'}.' THEN '.
$self->{'left'}.' + '.$skew_edit.' ELSE CASE WHEN '.$self->{'left'}.' > '.$data->{'right'}.' THEN '.
$self->{'left'}.' - '.$skew_tree.' ELSE '.$self->{'left'}.' END END, '.
$self->{'level'}.' = CASE WHEN '.$self->{'right'}.' <= '.$data->{'right'}.' THEN '.
$self->{'level'}.' + '.$skew_level.' ELSE '.$self->{'level'}.' END, '.
$self->{'right'}.' = CASE WHEN '.$self->{'right'}.' <= '.$data->{'right'}.' THEN '.
... Читать дальше »
Категория: Программирование | Просмотров: 1493 | Добавил: phoinix | Дата: 2005-12-02

Раздробил основной скрипт на модули по разделам...
С одной стороны - удобно, загружаешь код всего в 500-1000 строк, а не в 5000-10000, но с другой... а модули-то вообще для этого?
Категория: Программирование | Просмотров: 894 | Добавил: phoinix | Дата: 2005-11-30

Причина только одна:

Когда проделываешь очередной "финт ушами", как в Perl, по привычке, спокойно ложишься спать довольный собой, а на следующий день вдруг натыкаешься на функцию, которая твой "финт ушами" делает в одно действие...

Обидно, да...

Категория: Программирование | Просмотров: 847 | Добавил: phoinix | Дата: 2005-11-18

Мля! В PHP казывается есть условный оператор ?:, а я с IF-ами онанизмом занимался...
Категория: Программирование | Просмотров: 891 | Добавил: phoinix | Дата: 2005-11-18

Настал черед, когда алгоритм Nested Sets потребовалось реализовать на PHP.
Не долго думая был взят класс PHP cdbtree (dbtree) дабы посмотреть, что он может... Оказалось, может немногое... но не это меня так удивило... меня удивил еще один класс, который шел в нагрузку к основному - для работы с базой данных. Открыв его, я сначала удивился, ибо большинство методов (конструкторов) состояли из одной строки. Смысл создавать объект, если выигрыша по размеру кода просто нет?
Но хорошо, подумал я... это сделано специально, что бы можно было подставить интерфейс к базе данных другого вида, тот же PostgreSQL или Oracle. Вот, думаю, какие "прохаваные" программеры, даже это учли...
но радость была не долгой...
Вернувшись в основной класс, я обнаружил, что в запросах используются уникальные команды MySQL. То бишь эти запросы в других БД SQL - не канают...

P.S.: Говно, в общем, этот класс... буду писать свой...

P.P.S.: А у меня запросы универсальные... вот... и мне практ ... Читать дальше »

Категория: Программирование | Просмотров: 843 | Добавил: phoinix | Дата: 2005-11-17

Вот выложил вчера статью из цикла Nested Sets и проверил папку в которой хранятся наброски новых статей. Набросков оказалось довольно много:

Из цикла "Nested Sets":
1. От теории к практике - Написание класса PHP или гонки слепых котят;
2. Практика Nested Sets - Perl. Универсальный каталогизатор;
3. Практика Nested Sets - Perl. Выводим каталоги на сайте;
4. Практика Nested Sets - PHP. Выводим каталоги на сайте;

Из цикла "Программирование Perl":
1. Авторизация пользователей на сайте или сессии своими руками;
2. Шаблонизатор. Пишем модуль;
3. Делаем свой ящик с инструментами или долой requere;

Из цикла HTML+JavaScript;
1. Форма в форме;

Итого 8 статей... блин... и еще пара-тройка в задумках... где же время взять?

UPD: Нет последнюю статью по HTML выложил прямо сейчас... все равно там нет никаких "заморочек"...

Категория: Программирование | Просмотров: 972 | Добавил: phoinix | Дата: 2005-11-17

Сегодня выложил одну новую статью и три старых... да уж... особенно понравились старые, в них особо не извращался над кодом, да и код оставляет желать лучшего... ну что ж... опыт растет...
Думаю, написать улучшенные статьи на основе старых. Все равно технология осталась та же, только гораздо улучшена и "вылизана"...

P.S. Кстати в процессе написания, еще три статьи и еще три в планах, не считая, что планирую еще три написать... Мрак, и где время найти?

Категория: Программирование | Просмотров: 1243 | Добавил: phoinix | Дата: 2005-11-03

 

Бесплатный конструктор сайтов - uCoz