Как правильно взорвать этот массив?

У меня есть этот массив ($recip):

Array
(
[0] => 393451234567
[1] => 393479876543
)

Поставщик SMS API требует номера в следующем формате:

recipients[]=393334455666&recipients[]=393334455667

С

$recipients = implode('&recipients[]=',$recip);

Я могу получить только это:

393471234567&recipients[]=393459876543

Пропал первый «recipients[]«(в целом, первый не требует»&» совсем).

1

Решение

Просто добавьте начальный recipients[]= перед вашей строкой:

$recipients = 'recipients[]=' . implode('&recipients[]=',$recip);
2

Другие решения

Другой вариант:

foreach ($array as $key => $value){
$array[$key] = (($key == 0) ? '' : '&').'recipients[]='.$value;
}
$result = implode('',$array);

foreach Цикл позволяет вам объединить вашу строку. Я включаю чек, чтобы избежать добавления & на первой части строки.

Указав это как вариант, но другой способ проще!

0

Попробуй это:

vsprintf('recipients[]=%s&recipients[]=%s', $recip);
0

Другой вариант

foreach ($recip as $ip){
$array[] = 'recipients[]=' . $ip;
}
$result = implode('&',$array);
0
По вопросам рекламы [email protected]