PHP,Laravel:从JSON中消除特定的复杂数组



我目前正在为我的项目开发一个使用Laravel的API,概念是:

  1. 从MySQL中检索JSON数据
  2. 从前端接收用户输入(字符串(
  3. 将JSON和字符串输入转换为具有类似结构的数组。这里的数组结构基本上是["ObjectA", "ObjectA_quantity", "ObjectB", "ObjectB_quantity", ...]
  4. 基本上,根据用户输入数组得到的每个对象,消除数据库数组中每个对象的数量。例如,如果数据库的数组得到["pizza", "1", "burger", "2"],而用户输入的数组得到了["pizza", "1"],则该方法的输出应为["burger", "2"]

我开发的方法会给出不一致和令人困惑的输出,比如对于某些对象,它运行良好,对于其他对象,它不会消除任何东西,如果用户输入的数组太大(>1个对象(,它也不会消除任何事件。我真的很欢迎不同的方法或任何其他能产生上述预期输出的方法。非常感谢

以下是我开发的方法的源代码:(方法位于:else if ($transactionGetter->type == 'return'),第148行等等(

https://github.com/andre-nk23/packme-backend/blob/master/app/Http/Controllers/API/TransactionController.php

如果是JSON,则必须在访问之前解码该值

$transactionGetter=json_decode($transactionGetter);

最新更新