PHP – удалить n-ные данные из многомерного массива или jsonPhp

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 PHP – удалить n-ные данные из многомерного массива или json

Сообщение Anonymous »


Я использую PHP для извлечения данных из базы данных. Ответ представляет собой многомерный JSON, и мне нужно динамически удалить часть данных. Вот структура:

{ «успех»: правда, "данные": [ { «Имя»: «Джейн», "Идентификатор": "3473-45413-1657445", «Псевдоним»: «Доу», "УДИД": "654984-6548648-1651684", "КЛЮЧ": "ASD-456-GHJ", "параметры": [ { «Тип»: «К12», «Модель»: «53-ДДЛ», «UnitCost»: 55,5, «КОЛИЧЕСТВО»: 1, «Сумма»: 55,5, «Спецификация»: ноль }, { «Тип»: «К11», «Модель»: «55-604», «UnitCost»: 55,5, «КОЛИЧЕСТВО»: 1, «Сумма»: 55,5, «Спецификация»: ноль } ], «уровень»: 0, «Итого»: 55,5, «Член»: ноль, "LogTime": "2023-12-25 12:40:59", «ОП1»: «Джек», «ОП2»: «Дэнни», «ОП3»: «Пол», «Попытка»: 1, «Местоположение»: «Лос-Анджелес» }, { «Имя»: «Джейн», "Идентификатор": "3473-45413-1657445", «Псевдоним»: «Доу», "УДИД": "654984-6548648-1651684", "КЛЮЧ": "ASD-456-GHJ", "параметры": [ { «Тип»: «К12», «Модель»: «53-ДДЛ», «UnitCost»: 55,5, «КОЛИЧЕСТВО»: 1, «Сумма»: 55,5, «Спецификация»: ноль }, { «Тип»: «К11», «Модель»: «55-604», «UnitCost»: 55,5, «КОЛИЧЕСТВО»: 1, «Сумма»: 55,5, «Спецификация»: ноль } ], «уровень»: 0, «Итого»: 55,5, «Член»: ноль, "LogTime": "2023-12-25 12:40:59", «ОП1»: «Джек», «ОП2»: «Дэнни», «ОП3»: «Пол», «Попытка»: 1, «Местоположение»: «Лос-Анджелес» }, { «Имя»: «Джейн», "Идентификатор": "3473-45413-1657445", «Псевдоним»: «Доу», "УДИД": "654984-6548648-1651684", "КЛЮЧ": "ASD-456-GHJ", "параметры": [ { «Тип»: «К12», «Модель»: «53-ДДЛ», «UnitCost»: 55,5, «КОЛИЧЕСТВО»: 1, «Сумма»: 55,5, «Спецификация»: ноль }, { «Тип»: «К11», «Модель»: «55-604», «UnitCost»: 55,5, «КОЛИЧЕСТВО»: 1, «Сумма»: 55,5, «Спецификация»: ноль } ], «уровень»: 0, «Итого»: 55,5, «Член»: ноль, "LogTime": "2023-12-25 12:40:59", «ОП1»: «Джек», «ОП2»: «Дэнни», «ОП3»: «Пол», «Попытка»: 1, «Местоположение»: «Лос-Анджелес» } ], «код»: 0, "msg": "Успех", "счет": 3 } Мне нужно удалить каждую секунду данных[]. Что я пробовал и работал, так это декодировать JSON в массив и разделить data[] как новый массив, а затем отключить каждую его вторую часть, как показано ниже:

$new_arr = $data['data']; for ($i = 1; isset($new_arr[$i]); $i += 2){ unset($new_arr[$i]); } Затем соедините новый массив с остальными исходными данными JSON.

Однако мне интересно, есть ли более элегантный способ использовать меньше кода и делать это на лету. Что-то вроде:

$data['data'][$i],$i++,if $i%2 ==0, unset($data['data'][$i]) Я попробовал, но не помогло. Есть свет?
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • PHP – удалить n-ные данные из многомерного массива или json [дубликат]
    Anonymous » » в форуме Php
    0 Ответы
    16 Просмотры
    Последнее сообщение Anonymous
  • Удалить N-ные данные из многомерного массива или JSON [дубликат]
    Anonymous » » в форуме Php
    0 Ответы
    21 Просмотры
    Последнее сообщение Anonymous
  • Скрыть n-ные дочерние элементы после числа, кратного 7
    Гость » » в форуме CSS
    0 Ответы
    22 Просмотры
    Последнее сообщение Гость
  • Скрыть n-ные дочерние элементы после числа, кратного 7
    Гость » » в форуме CSS
    0 Ответы
    20 Просмотры
    Последнее сообщение Гость
  • Удалить элементы из плоского массива, если они найдены в подмассиве многомерного массива.
    Anonymous » » в форуме Php
    0 Ответы
    18 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Php»