Всем привет, столкнулся с такой проблемой. Не получается обработать массив объектов в php

По коду видно, что я передаю массив объектов в formData и отправляю formData в php. Но у меня не получаеться обработать его в php и отправить на почту адекватное сообщение. То есть все значения формы отправляются а объект нет. Подскажите как отработать массив объектов в php

const formData = new FormData(form); formData.append('order', JSON.stringify(productArray));

if (error === 0) {
const formData = new FormData(form);
formData.append('Заказ', JSON.stringify(productArray));

if (error === 0) {
  postData('./mailer/smart.php', formData)
  .then(res => {
    form.reset();
  })
  .catch((error) => {
    console.log(error);
  })
};

};


$prod = ''

foreach ($myArray -> $items as $item) {
    $title = $item['title'];
    $price = $item['price'];
    $fullPrice = $item['fullPrice'];

    $prod = '
        <tr>
                <td style="padding: 10px; border: 1px solid #e9e9e9">'.$title.'</td>
                <td style="padding: 10px; border: 1px solid #e9e9e9">'.$price.'</td>
                <td style="padding: 10px; border: 1px solid #e9e9e9">'.$fullPrice.'</td>
        </tr>
    '

}```




    

Ответы (1 шт):

Автор решения: Sliva

Вы отправляете JSON массив объектов. Для начала вам необходимо декодировать JSON:

$prod = ''

foreach (json_decode($myArray->$items) as $item) {
    $title = $item['title'];
    $price = $item['price'];
    $fullPrice = $item['fullPrice'];

    $prod = '
        <tr>
                <td style="padding: 10px; border: 1px solid #e9e9e9">'.$title.'</td>
                <td style="padding: 10px; border: 1px solid #e9e9e9">'.$price.'</td>
                <td style="padding: 10px; border: 1px solid #e9e9e9">'.$fullPrice.'</td>
        </tr>
    '
}
→ Ссылка