цикл foreach, добавляющий значение в цикл - PullRequest
0 голосов
/ 02 января 2012

Это кажется очень простым, но я остановился на этом.

$value = 0;
foreach($this->products->result() as $this->product)
{
    $value += $this->product->price;
}
//$value += $this->get_order_shipping_cost($orders_id);

return $value;

Значение, которое должно быть добавлено для создания общей цены, а затем вне цикла, чтобы добавить стоимость доставки, но по какой-то причине мой цикл возвращает только первое значение, поэтому я что-то перезаписываю.

Ответы [ 2 ]

3 голосов
/ 02 января 2012

я думаю, что здесь перезаписывается куча:

foreach($this->products->result() as $this->product)

Я не знаю, что вы делаете раньше, но, возможно, вы могли бы использовать имя временной переменной в цикле for следующим образом:

foreach($this->products->result() as $tempProduct)
{
    $value += $tempProduct->price;
}

надеюсь, что это работает;) привет, Стефан

0 голосов
/ 02 января 2012

Вы устанавливаете частного участника в своем классе, пока вы только хотите получить продукт, и все.Вам не нужно использовать $this->product, просто используйте вместо него свободную переменную, например $product, и она должна работать:

$value = 0;
foreach($this->products->result() as $product)
{
    $value += $product->price;
}

Также, если products является одним из ваших объектов, вы должны датьэто, вероятно, метод, подобный getTotalPrice(), который просто возвращает сумму, например так:

$value = $this->products->getTotalPrice();

Затем вы можете использовать этот более гибкий код в своем коде.Надеюсь, что это полезно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...