在循环中组合数组值

维斯努巴尔达斯

我有这样的json数据:

    {
        "no" : "",
        "hs_code" : "01.05",
        "uraian" : "Unggas hidup, yaitu ayam dari spesies Gallus",
        "description" : "Live poultry, thatis to say, fowls of the ",
        "bm" : ""
    },
    {
        "no" : "",
        "hs_code" : "",
        "uraian" : "domestic us, bebek, an gs a, kalkun dan a yam guinea",
        "description" : "species Gallus domesticus, ducks, geese,",
        "bm" : ""
    },
    {
        "no" : "",
        "hs_code" : "",
        "uraian" : "",
        "description" : "turkeys and guinea fowls",
        "bm" : ""
    },
{
        "no" : "",
        "hs_code" : 0002"",
        "uraian" : "ssss",
        "description" : "ssss",
        "bm" : ""
    },

如何在 php 中使用这样的结果数据循环:

{
        "no" : "",
        "hs_code" : "01.05",
        "uraian" : "Unggas hidup, yaitu ayam dari spesies Gallus domestic us, bebek, an gs a, kalkun dan a yam guinea",
        "description" : "Live poultry, thatis to say, fowls of the species Gallus domesticus, ducks, geese turkeys and guinea fowls",
        "bm" : ""
 },
{
        "no" : "",
        "hs_code" : 0002"",
        "uraian" : "ssss",
        "description" : "ssss",
        "bm" : ""
    },

因此,如果“hs_code”索引没有值,则“uraian”和“description”索引将合并到“uraian”和“description”索引中,其 hs_code 索引具有值,请帮忙...我试试这个循环

$data =  APPPATH."modules/masterCrud/seeder/hscode_2017_tes.json";
            $sss = json_decode(file_get_contents($data));
            $result = [];
            $x = 0;
            for($i = 0; $i < count($sss); $i++)
            {
                $x--;
                $no = $sss[$i]->no;
                $hs_code = $sss[$i]->hs_code;
                if($sss[$i]->hs_code == '')
                {
                    $sss[$i]->uraian .= $sss[$i]->uraian;
                    $sss[$i]->description .= $sss[$i]->description;
                }
                $uraian = $sss[$i]->uraian;
                $description = $sss[$i]->description;
                $bm = $sss[$i]->bm;
                array_push($result,compact('no','hs_code','uraian','description','bm'));
            }
            print_r($result);

这没有用...

克里什

代码

$result = [];
$x= 0;
for($i = 0; $i < count($sss); $i++) {
    if($sss[$i]->hs_code) {
        $x= $i;
        $result[$i] = $sss[$i];
    } else {
        $result[$x]->uraian =  $result[$x]->uraian . ' ' . $sss[$i]->uraian;
        $result[$x]->description =  $result[$x]->description . ' ' . $sss[$i]->description;
    }
 }
array_multisort($result, SORT_ASC);
print_r($result);

说明

技巧:在每个hs_code有价值的地方,将该位置保存为$xby $i

因此,对于 empty hs_code、 updateuraiandescription.

$result will has difference in keys so user **array_multisort** 

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

循环并组合数组中的时间范围

来自分类Dev

如何根据相同的键组合PHP循环中的数组值

来自分类Dev

在特定数组值上组合数组

来自分类Dev

数组值在循环中重置

来自分类Dev

如何通过键组合数组中的值?

来自分类Dev

使用递归组合数组值,即使它们为空

来自分类Dev

组合数组流和单值流

来自分类Dev

通过公共键和值组合数组中的对象

来自分类Dev

用Java组合数组

来自分类Dev

系统地组合数组

来自分类Dev

组合数组键PHP

来自分类Dev

python逐项组合数组

来自分类Dev

如何将复杂的JavaScript数组转换为组合数组并循环到表?

来自分类Dev

在循环中分配数组的值

来自分类Dev

Bash脚本需要for循环中的数组值

来自分类Dev

在while循环中重复数组值

来自分类Dev

从循环中的数组中删除重复值

来自分类Dev

将数组合并到单个外部循环中

来自分类Dev

在循环中组合来自 2 个数组的 2 个对象?

来自分类Dev

使用ruby根据数组的第一个元素组合数组值

来自分类Dev

如果最大值只能是 30,如何组合数组中的值?

来自分类Dev

在循环中从循环打印数组中的所有值

来自分类Dev

如何创建一个新的键名并用 PHP 组合数组中的值?

来自分类Dev

Java:成对组合数组中的元素

来自分类Dev

PHP组合数组并对其进行排序

来自分类Dev

组合数组并添加分数

来自分类Dev

如何获得改组数组的组合数?

来自分类Dev

生成组合数组PHP

来自分类Dev

如何根据用户选择组合数组?