2013-09-12 4 views
0

У меня есть массив сообщений электронной почты, которые необходимо проверить. Когда я вызываю функцию во время итерации, цикл останавливается после первой итерации и не переходит по всему массиву. и возвращаемое значение.Функция внутри FOR LOOP выполняется только один раз

$ num содержит 6 и $ email составляют (1st @ yahoo.com, 2nd @ yahoo.com, 3rd @ yahoo.com, [email protected], 5th @ yahoo.com, 6th @ yahoo. com) единственное действующее и зарегистрированное электронное письмо - это [email protected] и [email protected], но я получаю только [email protected], который является последним.

function get_email_verification(){ 
     $num = count($this->get_payqucker_emails()); 
     $email = $this->get_payqucker_emails(); 
     if ($num){ 
      for($i=0; $i < $num; $i++){ 
       $api_request_url = "http://api.payquicker.com/api/IsActiveAccount"; 
       $param = "email=".$email[$i]; 
     $result_request = $this->do_request($api_request_url, $param, 'GET', 'json'); 
      } 
     } 
     else { 
      echo "All payee emails are already registered to Payquicker"; 
     } 
     return $result_request ; 

    } 

do_request функция паузы значение JSON/XML для (GET/POST) в Payquicker API,

+0

Не прямая задача, но код будет работать оооочень гладкой если вы сделаете $ num = count ($ email). Нет необходимости вызывать функцию дважды. –

+0

это только выполнить один раз $ result_request = $ this-> do_request ($ api_request_url, $ param, 'GET', 'json'); – ArkNet

+0

@ArkNet Как вы знаете, код внутри цикла выполняется только один раз? – Alik

ответ

1

Использование Еогеасп:

function get_email_verification(){ 
      $result_request = array(); 
      $api_request_url = "http://api.payquicker.com/api/IsActiveAccount"; 
      foreach ($this->get_payqucker_emails() as $email) { 

        $param = "email=".$email; 
        $result_request[] = $this->do_request($api_request_url, $param, 'GET', 'json'); 
      } 
      if (empty($result_request)) { 
       echo "All payee emails are already registered to Payquicker"; 
      } 
      return $result_request;  
    } 
+0

ОК спасибо плохой пример – ArkNet

+0

какая разница? (между for и foreach) – itachi

+0

@cske Спасибо, что получили два письма. – ArkNet

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