У меня есть этот массив ($recip
):
Array
(
[0] => 393451234567
[1] => 393479876543
)
Поставщик SMS API требует номера в следующем формате:
recipients[]=393334455666&recipients[]=393334455667
С
$recipients = implode('&recipients[]=',$recip);
Я могу получить только это:
393471234567&recipients[]=393459876543
Пропал первый «recipients[]
«(в целом, первый не требует»&
» совсем).
Просто добавьте начальный recipients[]=
перед вашей строкой:
$recipients = 'recipients[]=' . implode('&recipients[]=',$recip);
Другой вариант:
foreach ($array as $key => $value){
$array[$key] = (($key == 0) ? '' : '&').'recipients[]='.$value;
}
$result = implode('',$array);
foreach
Цикл позволяет вам объединить вашу строку. Я включаю чек, чтобы избежать добавления & на первой части строки.
Указав это как вариант, но другой способ проще!
Попробуй это:
vsprintf('recipients[]=%s&recipients[]=%s', $recip);
Другой вариант
foreach ($recip as $ip){
$array[] = 'recipients[]=' . $ip;
}
$result = implode('&',$array);