2017-07-12 8 views
-2

コンマを配列の戻り値に追加します。私は$ EMAIL_IDを印刷するときコンマを配列の値に分解します。

私のコードは

 $to_ids_string = "";   
     $to_id = $this->input->post('to');    
     for ($r = 0; $r < count($this->input->post('to')); $r++) { 
      if ($to_ids_string != "") { 
       $to_ids_string = $to_ids_string . "," . $to_id[$r];      
      } else { 
       $to_ids_string = $to_id[$r]; 
      }     
     }   
      $a = explode(',', $to_ids_string); 
      foreach ($a as $item) { 
       $user_id = $item;//echo $user_id; 
       $email_id['to_email'] = $this->admin_model- 
       >get_email_id($user_id); 
       $b = implode(',',$email_id[0]['to_email']); 
       echo $b; 
      }exit; 

ある[ 'to_email']、それはGmailの@ アレイ([0] =>配列([メール] => dipti戻ります。 com))Array([0] => Array([email] => [email protected]))しかし、カンマで区切ってメールを返信したいのですが、上記のimplode関数を使用します。文字列変換

+0

を使用して文字列の末尾に追加カンマを削除する必要があり、これはforeachの外で変数を.declareのように連結する必要があります'、' array_column($ email_id ['to_email']、 'email')); – JYoThI

+0

あなたのコードは動作しますが、dipti @ gmail.comabc @ gmail.comがあります。ここでは2つのメールはコンマで区切られていません。 – dipti

+0

これはforeachの内側にあることに気付きました。毎回1つのメールしか受け取らないようにします。このようにforeachの外にある変数をこの$ b。= ''のような空の変数として宣言する必要があります。このような$ b。= $ email_id ['to_email'] [0] ['email']のようなforeach concatinateの内部。 '、'; foreach後、rtrim()を使って文字列の最後にカンマを追加する必要があります。 – JYoThI

答えて

0

今私は、 foreachの内側にある。毎回1つのメールしか受け取らないようにします。この$b.='';のような空の変数は、その後のforeach内のforeach後、この$b.=$email_id['to_email'][0]['email'].',';のように連結するように、あなたは破(あなたがrtrim()

$b=''; 
foreach ($a as $item) { 
     $user_id = $item;//echo $user_id; 
     $email_id['to_email'] = $this->admin_model>get_email_id($user_id); 

     $b.=$email_id['to_email'][0]['email'].','; 

      } 
    echo rtrim($b,','); 
+0

ありがとうございます。 – dipti

+0

よろしくお願いします:) – JYoThI

+0

歓迎:)私はあなたの助けに喜んでいます:) – dipti

関連する問題