duanjie6912 2016-04-11 08:47
浏览 167
已采纳

对数组属性的访问包含laravel中的json格式元素

suppose I have an Array like this :

$myArray =
[
    {
        "id": 86,
        "name": "admin/login"
    },
    {
        "id": 87,
        "name": "admin/logout"
    },
    {
        "id": 88,
        "name": "admin/desktop"
    }
]

Each element of array has json format. and now I want to get name of element that have id of 87 for example.

Firstly How can I found that is there element with this id then get name property of that?

  • 写回答

3条回答 默认 最新

  • dpruwm6206 2016-04-11 10:18
    关注

    Decode JSON string into array. Then use Laravel's array_first method.

    <?php
    $myArray = '[{"id": 86,"name": "admin/login"},{"id": 87,"name": "admin/logout"},{"id": 88,"name": "admin/desktop"}]';
    
    // Decode into array
    $array = json_decode($myArray, true);
    
    // Find item with correct id
    $result = array_first($array, function($key, $value){
      return $value['id'] === 87;
    }, false);
    
    if ($result) {
        echo 'Item found, it\'s name is: '.$result['name'];
    }
    

    If you have id you like to find in variable, you have to use use construct.

    // ID to search for
    $searchID = 87;
    
    // Find item with correct id
    $result = array_first($array, function($key, $value) use($searchID){
      return $value['id'] === $searchID;
    }, false);
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥20 用HslCommunication 连接欧姆龙 plc有时会连接失败。报异常为“未知错误”
  • ¥15 网络设备配置与管理这个该怎么弄
  • ¥20 机器学习能否像多层线性模型一样处理嵌套数据
  • ¥20 西门子S7-Graph,S7-300,梯形图
  • ¥50 用易语言http 访问不了网页
  • ¥50 safari浏览器fetch提交数据后数据丢失问题
  • ¥15 matlab不知道怎么改,求解答!!
  • ¥15 永磁直线电机的电流环pi调不出来
  • ¥15 用stata实现聚类的代码
  • ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?