首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在PHP中从关联数组获取JSON数据类型

问在PHP中从关联数组获取JSON数据类型
EN

Stack Overflow用户
提问于 2013-03-25 11:07:18
回答 2查看 1.8K关注 0票数 0

大家晚上好!

所以,我有一个JSON字符串...

代码语言:javascript
复制
{"username":"87db3983285d395ca0af9f","password":"f4f0bb1533ef5034ce6b0a8a7c49a43b","email":"xxx@gmail.com","hnum":3,"splicenum":22,"reg_ip":"71.126.122.217","reg_date":1364175245,"cur_ip":"71.126.122.217","ip_array":["71.126.122.217"],"logins":[],"about":""}

我使用json_decode()在PHP中将这个字符串解码成一个关联数组。

我要做的是创建一个单独的函数来查询JSON对象,该对象已经在PHP中转换为一个关联数组。对于这个函数,我现在正在编辑/更新字段。

示例:

代码语言:javascript
复制
json_edit(array(
    "set"=>array(
        "email"=>"yyy@yahoo.com"
    )
));

"set“键表示设置字符串或布尔值。另一个键是"push“,用于追加到数组,或者" delete”,用于删除字符串或数组。

我想知道的是,如何在PHP中获取当前数组部分的数据类型?

也就是说,我怎样才能让PHP说,“好的,'username‘字段是一个字符串,'ip_array’字段是一个数组”?

我不希望能够将字符串值“设置”为布尔值或数组。

有没有办法在PHP中获得JSON数据类型?

提前谢谢你了。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2013-03-25 13:36:39

gettype()又如何呢?Gettype()将返回任何变量的数据类型。http://php.net/manual/en/function.gettype.php

票数 2
EN

Stack Overflow用户

发布于 2013-03-25 11:41:38

我会使用像这样的东西;

代码语言:javascript
复制
<?php
function json_edit($json, $changes = array()){

    $decoded = json_decode($json);

    foreach($changes as $action => $data){
        swith($action){
            case 'SET':

                foreach($data as $key => $value){
                    $decoded[$key] = $value;
                }

            break;

            case 'DELETE' :

            break;
            default;

        }
    }

    return json_encode($decoded);
}
?>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15606978

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档