2014-11-24 3 views
0

Привет У меня есть код, приведенный ниже в OpenCart (ответственный отображать варианты оплаты на этапе оформления заказа - 4),PHP - массив становится пустой вне цикла Еогеасп

$method_data = array(); 

    $results = $this->model_setting_extension->getExtensions('payment'); 

        foreach ($results as $result) { 
         if ($this->config->get($result['code'] . '_status')) { 
          $this->load->model('payment/' . $result['code']); 

          $method = $this->{'model_payment_' . $result['code']}->getMethod($payment_address, $total); 

          if ($method) { 
           $method_data[$result['code']] = $method; 
          } 
         }  
         print_r($method_data); // Getting dump of data's 
        } 


      print_r($method_data); // Empty Array 

Я проверил все возможные комбинации для данной проблемы, как ,

  • Ни одна другая переменная с таким же именем ($ method_data)
  • Foreach цикл выполнения 4 раза (есть 4 доступные варианты оплаты).

Кто-нибудь имел представление о том, что происходит за этой проблемой.

+0

Что вы можете получить свалку данных? делает в foreach '$ method_data' желаемый результат? –

ответ

0

Можете ли вы проверить еще раз на следующий код:

if ($method) { 
        $method_data[][$result['code']] = $method; 
       } 

Это сделает массив двумерным. Пожалуйста, проверьте и дайте мне знать, если вам нужна дополнительная помощь.

ПРИМЕЧАНИЕ: В коде используется код.

Смежные вопросы