Последовательность for($i=0; $i < 7; $i++) с шагом 0,1

Fellix

Новичок
Здравствуйте!

Имеется такой код:

PHP:
		if($dbrow->displacement){
			$dispexp = explode(".", $dbrow->displacement);
			$dispv1 = $dispexp[0];
			$dispv2 = $dispexp[1];
		} else {
			$dispv1 = '';
			$dispv2 = '';
		}
		
		
		$disp1[]	= JHTML::_('select.option',  '', 'Литры' , 'value', 'text' );

		for($i=0; $i < 7; $i++) {
			$disp1[] = JHTML::_('select.option', $i, $i);
		}
		
		if($config->reqaddisplacement){
			$displacementclass = "validate[required]";
		}
		$lists['disp1'] = JHTML::_('select.genericlist', $disp1, 'displacement[]',
		'class="'.$displacementclass.' inputbox1" size="1" ',
		'value', 'text', $dispv1);
		$disp2[]	= JHTML::_('select.option',  '', 'Десятые' , 'value', 'text' );

		for($i=0; $i < 10; $i++) {
			$disp2[] = JHTML::_('select.option', $i, $i);
		}

		$lists['disp2'] = JHTML::_('select.genericlist', $disp2, 'displacement[]',
		'class="'.$displacementclass.' inputbox1" size="1" ',
		'value', 'text', $dispv2);


Код служит для записи в базу объема двигателя авто.
Ужасно неудобный с двух выпадающих списков.

Помогите пожалуйста вырезать лишнюю половину, чтоб был один выпадающий список с шагом 0,1
 

Fellix

Новичок
Говорила мне мама - "Учись!" )))
Спасибо большое akd!

PHP:
for($i=0.7; $i < 7.7; $i+=0.1)
- вот это помогло.

Сразу второй вопрос созрел))

В выпадающем списке целые числа отображаются как "1".
Реально сделать "1.0"?
 

Fellix

Новичок
Andkorol, большое спасибо, но если честно запутался ))

Вот что у меня получилось, все заливается как надо в базу, но с форматом целых чисел не разобрался :(

PHP:
		$disp1[]	= JHTML::_('select.option',  '', 'Объем в литрах' , 'value', 'text' );
		for($i=0.7; $i < 7.7; $i+=0.1) {
			$disp1[] = JHTML::_('select.option', $i, $i);
		}
		if($config->reqaddisplacement){
			$displacementclass = "validate[required]";
		}
		$lists['disp1'] = JHTML::_('select.genericlist', $disp1, 'displacement[]',
		'class="'.$displacementclass.' inputbox1" size="1" ',
		'value', 'text', intval($dbrow->displacement));
Как или sprintf или number_format в моём случае правильно прописать?
 

Andkorol

Новичок
Примени любую из этих функций к переменной, значение которой нужно отформатировать - К.О.:)
Пример использования sprintf я привел, по number_format примеров полно в мануале - все нужные ссылки у тебя есть.
Прописывать вместо тебя что-либо в твоем коде здесь не принято - это уж ты сам разберись и сделай, это ж тебе нужно.
Копипаст - это быстро и просто, да. Но, с точки зрения развития - практически бесполезно.
 

Fellix

Новичок
Andkorol, огромное спасибо, все понятно.
И так много подсказали, буду разбираться.
Удачки!
 

Fellix

Новичок
Решено, всем спасибо!!!

PHP:
$disp1[]	= JHTML::_('select.option',  '', 'Объем в литрах' , 'value', 'text' );
		for($i=0.7; $i < 7.7; $i+=0.1) {
		
		$l = number_format( $i, 1 );
			$disp1[] = JHTML::_('select.option', $l, $l);
		}
		if($config->reqaddisplacement){
			$displacementclass = "validate[required]";
		}
		$lists['disp1'] = JHTML::_('select.genericlist', $disp1, 'displacement[]',
		'class="'.$displacementclass.' inputbox1" size="1" ',
		'value', 'text', intval($dbrow->displacement));
 
Сверху