php删除数组的key

{
    "msg": "ok",
    "status": 1,
    "data": {
        "id": 155,
        "title": "自家的苹果",
        "content": "<p>自家的,要的联系,包邮。</p>",
        "create_time": "2018-01-26 17:24:55", 
        "avatar": "https://think.weipintui.com/uploads/20180126/f9a31f83b9ba56afeaddfb8b708692a9.png",
        "pics": [
            {
                "url": "https://think.weipintui.com/uploads/20180126/da426c2213b9653450e5752b4eb20509.png"
            },
            {
                "url": "https://think.weipintui.com/uploads/20180126/bd6cde8ed6a0cb8b3bcb336c19f0d5ae.png"
            },
            {
                "url": "https://think.weipintui.com/uploads/20180126/681eec67bbfa5ad4b370fae019e45ea2.png"
            }
        ]
    }
}

怎么删除pics里面的url

阅读 3.9k
3 个回答

我大概懂了,你看是不是以下你想要的结果.

$str = <<<EOF
{
    "msg": "ok",
    "status": 1,
    "data": {
        "id": 155,
        "title": "自家的苹果",
        "content": "<p>自家的,要的联系,包邮。</p>",
        "create_time": "2018-01-26 17:24:55",
        "avatar": "https://think.weipintui.com/uploads/20180126/f9a31f83b9ba56afeaddfb8b708692a9.png",
        "pics": [
            {
                "url": "https://think.weipintui.com/uploads/20180126/da426c2213b9653450e5752b4eb20509.png"
            },
            {
                "url": "https://think.weipintui.com/uploads/20180126/bd6cde8ed6a0cb8b3bcb336c19f0d5ae.png"
            },
            {
                "url": "https://think.weipintui.com/uploads/20180126/681eec67bbfa5ad4b370fae019e45ea2.png"
            }
        ]
    }
}
EOF;
$data = json_decode($str,true);
$data = $data['data'];
// 这里是去除掉pics下面的url
$data['pics'] = array_column($data['pics'],'url');
print_r($data);exit;

打印得到的结果

Array
(
    [id] => 155
    [title] => 自家的苹果
    [content] => <p>自家的,要的联系,包邮。</p>
    [create_time] => 2018-01-26 17:24:55
    [avatar] => https://think.weipintui.com/uploads/20180126/f9a31f83b9ba56afeaddfb8b708692a9.png
    [pics] => Array
        (
            [0] => https://think.weipintui.com/uploads/20180126/da426c2213b9653450e5752b4eb20509.png
            [1] => https://think.weipintui.com/uploads/20180126/bd6cde8ed6a0cb8b3bcb336c19f0d5ae.png
            [2] => https://think.weipintui.com/uploads/20180126/681eec67bbfa5ad4b370fae019e45ea2.png
        )

)

有点lower,请谅解一下

先转成ARRAY
如果去掉所有 
UNSET($array_data['data']['pics'])
或是直接赋值 $array_data['data']['pics'] = array();

如果只是去掉关键KEY 就下面。

<?php
$array_data = json_decode($data); 
print_r(array_column($array_data['data']['pics'],'url') );
?>

没明白意思啊,删除键key,不是删除值 array_values( )这个方法不行

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题