Почему-то в одном скрипте не работает увеличение переменной на единицу ($count)!
Вот код:
| Код | if(!isset($format)) $format='{a}<b>{text}</b></a>'; if(!empty($menuid)) { $menu=$Mainclass->Cache->Get('line_menu_'.$menuid.'_'.$Mainclass->lang_name,false); if($menu===false) { $menu=array(); $Mainclass->Db->Query('SELECT `id`,`title`,`descr`,`url`,`eval_url`,`params` FROM `prefix_menu` INNER JOIN `prefix_menu_l` USING(`id`) WHERE `language` IN (\'\',\''.$Mainclass->lang_name.'\') AND `status` AND `parent`='.(int)$menuid.' ORDER BY `pos` ASC',__file__,__line__); while($arr=$Mainclass->Db->Fetch_assoc()) $menu[]=$arr; $Mainclass->Cache->Put('line_menu_'.$menuid.'_'.$Mainclass->lang_name,$menu,3600,false); } $count=1; foreach($menu as &$v) { $Mainclass->Url->ending=$Mainclass->vars['url_static_ending']; $url=$v['eval_url'] ? @eval('return '.$v['eval_url']) : $v['url']; if ($count=1) { $content.=str_replace(array('{a}','{text}'),array('<a href="'.$url.'"'.($url==$_SERVER['QUERY_STRING'] ? ' class="active"' : '').($v['descr'] ? ' title="'.htmlspecialchars(strip_tags($v['descr']),ENT_QUOTES).'"' : '').($v['params'] ? ' '.$v['params'] : '').'>',$v['title']),$format).(int)$count++; } else { $content.=str_replace(array('{a}','{text}'),array(' | <a href="'.$url.'"'.($url==$_SERVER['QUERY_STRING'] ? ' class="active"' : '').($v['descr'] ? ' title="'.htmlspecialchars(strip_tags($v['descr']),ENT_QUOTES).'"' : '').($v['params'] ? ' '.$v['params'] : '').'>',$v['title']),$format).(int)$count++; } } }
|
В чем может быть причина? Я пробовал перемещать каунт в начало скрипта, писать для форича $count=$count++; - всегда выводит 1 =( |