@WebforSelf

Почему данные не записываются в переменные?

Такого рода вопрос,
Работаю с xml ,достаю оттуда цены.

<Предложение>
				<Ид>92cd3a2b-c67f-11e6-801f-40167ea6074b</Ид>
				<Наименование>Бумажные полотенца 2-сл ФАМИЛИЯ белые XXL 1 рул </Наименование>
				<БазоваяЕдиница Код="796 " НаименованиеПолное="Штука" МеждународноеСокращение="PCE">шт</БазоваяЕдиница>
				<Цены>
					<Цена>
						<Представление>89,99 руб. за шт</Представление>
						<ИдТипаЦены>4dbf47c6-1bf2-11e1-87a5-14dae9941777</ИдТипаЦены>
						<ЦенаЗаЕдиницу>89.99</ЦенаЗаЕдиницу>
						<Валюта>руб</Валюта>
						<Единица>шт</Единица>
						<Коэффициент>1</Коэффициент>
					</Цена>
					<Цена>
						<Представление>75,98 руб. за шт</Представление>
						<ИдТипаЦены>4dbf47c8-1bf2-11e1-87a5-14dae9941777</ИдТипаЦены>
						<ЦенаЗаЕдиницу>75.98</ЦенаЗаЕдиницу>
						<Валюта>руб</Валюта>
						<Единица>шт</Единица>
						<Коэффициент>1</Коэффициент>
					</Цена>
					<Цена>
						<Представление>89,99 руб. за шт</Представление>
						<ИдТипаЦены>674491d1-1c25-11e1-8c47-f46d04ed5207</ИдТипаЦены>
						<ЦенаЗаЕдиницу>89.99</ЦенаЗаЕдиницу>
						<Валюта>руб</Валюта>
						<Единица>шт</Единица>
						<Коэффициент>1</Коэффициент>
					</Цена>
				</Цены>
				<Количество>13.00</Количество>
			</Предложение>


Вот собственно эти цены мне надо поместить в price, price1,price2

$ind = 1; //Индекс, который будет увеличиваться на единицу при каждом прохождении цикла по ценам
	$str = '';// Строковое значение индекса будет прибавляться к имени переменной price, price(1), price(2)
	foreach($xml_variant->Цены->Цена as $pr) // Бежим по всем ценам 			
	{			
		$variant->{'price'.$str} = floatval($pr->ЦенаЗаЕдиницу);	//Присваиваем переменной $purchase->$price, $purchase->$price1, $purchase->$price2 цену при каждом прохождении цикла по ценам				
		$ind++; // Увеличиваем индекс на единицу
		$str = ind; // Присваиваем индекс строковой переменной (именно она прибавляется к имени переменной price+'', price +'1',price+'2')
	}
	//==


Для этого юзаю фореч и с помощью счетчика пробегаю и присваиваю значения. Но почему то 3 переменных не попадают после этого цикла.

а если как раньше, вытаскивать одну то все работает и передается дальше

$variant->price = floatval($xml_variant->ЦенаЗаЕдиницу);


Где ошибся в цикле?
  • Вопрос задан
  • 89 просмотров
Решения вопроса 1
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы