parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Ну... я не видел дубликатов (у себя в тесте)...

Misha v.3 06.02.2003 16:44 / 06.02.2003 16:46

но я и не говорил, что это полностью провереный и рабочий код. возможно есть какие-то баги (я правда их не вижу).

проверь что выдает твое rand. раньше (не помню когда, но уже давно) в нем был баг. rand($n) должен выдавать значения от 0 по $n-1 включительно.

мысли...
1. count сравнивать с 3 - глупость, если уж сравнивать, то с ^source_table.count[]

2. даже если по каким-то причинам ты не хочешь ничего делать, не надо возвращать $result[] - пустую строку в методе, который обычно возвращает таблицу. или ^throw[] если считаешь, что это фатально, и что тот, кто будет пользовать метод должен сам его поймать и не допустить, или пустую таблицу (т.е. .select(0) в самое начало, чтобы в $result была таблица)

3. про хеш $added - сюдя я просто добавляю записи, ключами которых являются номера строк исходной таблицы, которые я только что добавил к результату, а значением - 1. делаю я это для того, чтобы просто (хеш лукапом) проверять, добавлял-ли я уже такую строку или нет.

4. про твой код, который ты писал первый раз: ты нехорошо обращался со столбцами. хеш не гарантирует порядка, т.е. у тебя во входящей таблице и в результирующей столбцы запросто могли не совпадать по номерам.