Foren / National / Russian / Переменная считающая вложнность категории

Oughtem
#1 27. Juli 2012, 20:46

Какая переменная отвечает за уровень вложенности категории? Например в урле http://www.site.ru/shop/laminat/bode/natur/2652 
shop - 1
laminat - 2
bode - 3
natur - 4 

Dayver
#2 27. Juli 2012, 21:00

В переменной $structure['page'][кодкатегории]['path'] хранится строка из которой на php достаточно просто можно посчитать уровень вложености, не?!

Pavlo Tkachenko aka Dayver
Oughtem
#3 28. Juli 2012, 18:55

У меня есть такой вариант:

$list_path_code = explode('.', $structure['page'][$c]['path']);
$list_parent_code1 = $list_path_code[count($list_path_code)-1];
$list_parent_code2 = $list_path_code[count($list_path_code)-2];
$list_parent_code3 = $list_path_code[count($list_path_code)-3];
$list_parent_code4 = $list_path_code[count($list_path_code)-4];
$list_parent_code5 = $list_path_code[count($list_path_code)-5];
$list_parent_code6 = $list_path_code[count($list_path_code)-6];
$list_parent_code7 = $list_path_code[count($list_path_code)-7];

$t->assign(array(
	"LIST_PARENT_CODE1" => $list_parent_code1,
	"LIST_PARENT_CODE2" => $list_parent_code2,
	"LIST_PARENT_CODE3" => $list_parent_code3,
	"LIST_PARENT_CODE4" => $list_parent_code4,
	"LIST_PARENT_CODE5" => $list_parent_code5,
	"LIST_PARENT_CODE6" => $list_parent_code6,
	"LIST_PARENT_CODE7" => $list_parent_code7,
));

Он высчитывает родительские категории, но вывести именно число, которое бы обозначало количество категорий от основной, он не может. Как дописать? Хелп плиз.

Dayver
#4 29. Juli 2012, 17:59
$list_path_code = explode('.', $structure['page'][$c]['path']);
$i = 1;
$param_code = 'list_parent_code';
$param_level = 'list_parent_level';
foreach ($list_path_code as $key=>$value)
{
   $param_name = $param_code.$i;
   $$param_name = $v;
   $param_name = $param_level.$i;
   $$param_name = $k;
   $i++;
}

Чисто показал принцып, а дальше доточить самому нужно под конкретное задание

Pavlo Tkachenko aka Dayver
Trustmaster
#5 30. Juli 2012, 05:42

Если нужно просто посчитать вложенность:

$nesting_count = substr_count($structure['page'][$c]['path']), '.');
May the Source be with you!
Oughtem
#6 30. Juli 2012, 21:00

спасибо

Добавлено 2 месяца спустя:

$nesting_count = substr_count(($structure['page'][$c]['path']), '.');

Две скобки просит. А в обратном порядке как сделать? чтоб самая приближённая к page категория была под №1 ?


Dieser Beitrag wurde von Oughtem (am 24. September 2012, 21:28, vor 11 Jahre) bearbeitet
esclkm
#7 26. September 2012, 06:06

данный код выводит только количесво - то есть глубину

littledev.ru - мой маленький зарождающийся блог о котонти.
снижение стоимости программирования и снижение стоимости производства разные вещи. Первое можно скорее сравнить с раздачей работникам дешевых инструментов, чем со снижением зарплаты