[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Последовательность чисел - интервал
0414
Добрый день,
есть код

...
$q=$ObjectNameRez[$d1].$ObjectName[$d];

где $ObjectNameRez[$d1]=$row[4]; и $ObjectName[$d]=$row[5];
данные соответственно берутся из БД запросом.

далее

$arr=explode(",",$q);// массив переводим в строку, где значения идут через запятую.


далее идет код, который заменяет последовательность чисел интервалом (напр., 1000,1001,1002,1003,1008,1100 заменяется на 1000-1003,1008,1100)
$q_arr=strstr($arr,2,4);//обрезаем строку чтобы остались только одни числа

$id = 0;
sort($q_arr);
$newarray = array();
foreach($q_arr as $k=>$v) {
if($v <= $id)
continue;

if($q_arr[$k+1] == $q_arr[$k]+1) {
$i = 1;
while(true) {
if(!in_array(($q_arr[$k]+$i),$q_arr)) {
--$i;
break;
}
$i++;
}
$newarray[] = $q_arr[$k].'-'.$q_arr[$k+$i];
$id = $q_arr[$k+$i];
} else {
$newarray[] = $q_arr[$k];
}
}

?>
<pre>
<?php print_r($newarray); ?>
</pre>

но когда я вывожу результат, он почему то не хочет обрабатывать эти данные,они остаются без изменений, может быть в коде какая то ошибка, может кто знает??
Подскажите пожалуйста!
Заранее спасибо.


 ! 

М
Заключайте код в соответствующие bb-теги. Читайте правила форума.
Invis1ble
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.