Уже несколько минут не могу решить проблему связанную с циклом в PHP
Код такой:
foreach ($leads as $leadData) {
$data = $leadData['data'];
$dealForBus = json_encode([
"ownerId" => $object->ownerId
]);
addToBus($this->pdo, $event, $dealForBus);
}
Данные внутри $leads
такие:
[
{
"id": 53,
"moment": "2024-07-15 21:27:53",
"data": {
"messageId": "3ABB9BBF9ACB92858E87"
},
"sourceData": {
"messageId": "3ABB9BBF9ACB92858E87"
}
},{
"id": 54,
"moment": "2024-07-15 21:27:58",
"data": {
"messageId": "3ABB9BBF9ACB92858E87"
},
"sourceData": {
"messageId": "3ABB9BBF9ACB92858E87"
}
}
]
Проблема заключается в том, что после итерации цикла значение id внутри leads меняется, то есть если например как приведенном мною случае внутри leads имеются id равные 53 и 54 то после прохождения через цикл, а именно после строки $data = $leadData['data'];
значение id равный 54 заменяется на 53 и соответственно leads после этого имеет значения id 53 и 53. И каждый раз последний id заменяется на предыдущий.
Ответы (1 шт):
Автор решения: Антон Виноградов
→ Ссылка
Попробуйте поработать с циклом for
:
for($i = 0; $i <= count($leads)-1; $i++){
$leads_id = $leads[$i]["id"];
$leads_moment = $leads[$i]["moment"];
$leads_data_messageId = $leads[$i]["data"]["messageId"];
$leads_sourceData_messageId = $leads[$i]["sourceData"]["messageId"];
//Далее подставляем эти переменные в нужные функции
}