"PHP" / Говнокод #8031 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
  7. 7
  8. 8
  9. 9
  10. 10
  11. 11
  12. 12
  13. 13
  14. 14
foreach ( $category->getChildrensCategory ( $_GET['id']+0 ) as $value ) {

	$count = count ( $db->fetchAll ( $db->select ()->from ( array ('I' => 'ItemShop' ) )
		    		->join ( array ('O' => 'ItemOptions' ), 'I.1cId=O.1cId' )
				->where ( 'I.Category IN (?)', array_merge ( array ($value ['Id'] ), $category->getAllChildrensCategory ( $value ['Id'] ) ) )
				->where ( 'O.New = 1' )
				->orWhere ( 'I.Category IN (?)', array_merge ( array ($value ['Id'] ), $category->getAllChildrensCategory ( $value ['Id'] ) ) )
				->where ( 'O.Insert > ?', date ( 'Y-m-d', mktime ( 0, 0, 0, date ( 'm' ), date ( 'd' ) - $date, date ( 'Y' ) ) ) )
 				->group ( 'I.1cId' ) ) );


	// ...

}

ZEND. Oh, wait... ZOMG!

Мало того, что тащим в память результат запроса, только чтобы его пересчитать, так в процессе формирования запроса два раза (!) дёргаем тяжелую рекурсивную функцию, которая собирает всех детей ноды (да, да, структура в БД имеет только Parent Node, никаких Nested Nodes и пр.)

Запостил: sheershoff sheershoff, (Updated )

Комментарии (11) RSS

Добавить комментарий

Семь раз отмерь — один отрежь, guest!

    А не использовать ли нам bbcode?


    8