| Новости | FAQ | Авторы | Документация | В действии | Библиотека |
| Инструменты | Полезные ссылки | Хостинги | Скачать | Примеры | Форум |
Misha v.3 13.01.2004 00:46
пусть у нас есть таблица structure со структурой (id, parent_id, title)# тут id объекта, для которого нам надо составить хеш с его родителями
$id(123)
$parents[^hash::create[]]
$str_hash[^structure.hash[id]]
$pid($id)
^while($pid){
^parents.add[
$.[$pid][$pid]
]
$pid($str_hash.[$pid].parent_id)
}
# теперь у нас в хеше $parents есть все родители объекта с id == 123
# соотвтетственно проверить всегда очень просто:
# ^if($parents.[$checked_id]){
# объект с id == $checked_id является одним
# из родителей объекта с id = 123 или им самим
# }{
# объект с id == $checked_id какой-то левый
# }