当前位置: 首页 > 面试题库 >

将stdClass对象转换为PHP中的数组

宗政昱
2023-03-14
问题内容

我从postmeta获取post_id为:

$post_id = $wpdb->get_results("SELECT post_id FROM $wpdb->postmeta WHERE (meta_key = 'mfn-post-link1' AND meta_value = '". $from ."')");

当我尝试print_r($post_id); 我有这样的数组:

Array
(
    [0] => stdClass Object
        (
            [post_id] => 140
        )

    [1] => stdClass Object
        (
            [post_id] => 141
        )

    [2] => stdClass Object
        (
            [post_id] => 142
        )

)

而且我不知道如何遍历它,如何获得这样的数组

Array
(
    [0]  => 140


    [1] => 141


    [2] => 142

)

知道我该怎么做吗?


问题答案:

最简单的方法是对对象进行JSON编码,然后将其解码回数组:

$array = json_decode(json_encode($object), true);

或者,如果您愿意,也可以手动遍历对象:

foreach ($object as $value) 
    $array[] = $value->post_id;


 类似资料:
  • 问题内容: 我做了以下数组: 我想知道如何使用stdClass()将此数组转换为对象,我是PHP初学者,一个简单的示例会非常有帮助,我尝试搜索类似的问题,但是答案很复杂,而且超出了我对基本类和对象的理解。 问题答案: 您只需添加此代码 如果要查看此stdClass对象,只需调用此 如果要将数组转换为目标代码,将 您不需要使用stdClass。它将自动转换为stdClass

  • 问题内容: 我正在将API集成到我的网站,该网站可以使用数组编写代码时处理存储在对象中的数据。 我想要一个快捷方式将对象转换为数组的函数。 问题答案: 只是打字 从 数组: 如果将对象转换为数组,则结果是一个数组,其元素是对象的属性。键是成员变量名称,但有一些值得注意的例外:整数属性不可访问;私有变量的类名在变量名之前;受保护的变量在变量名前带有“ *”。这些前置值的任一侧都有空字节。 示例:简单

  • 问题内容: 我如何将这样的数组转换为对象? 问题答案: 这个为我工作 用法: 返回: 像往常一样,您可以像这样循环播放:

  • 问题内容: 我对数组还很陌生。我需要一些帮助-我有一些JSON,并且已经通过一些PHP对其进行了运行,这些PHP基本上可以解析JSON并对其进行解码,如下所示: 实际上,这种情况一直持续发生-但是-我的问题是这一部分。我需要能够在for循环中调用此函数,然后遍历每个部分(主页,得分,缩写,到等)。我将如何处理? 问题答案: 您可以使用来获取对象的属性的数组,或致电与获得的关联数组。 例: 输出:

  • 我使用表单submit 现在,我想把这个数组转换成PHP数组,像这样 $汽车=数组(沃尔沃,宝马,丰田); 所以,这就是我所尝试的: 但它不起作用。看起来我无法将变量放在这里 但是,如果不是将变量放入,而是手动放入的输出,则其工作方式类似于: 解决办法是什么?

  • 问题内容: 转换的最佳方法是什么: 至: 问题答案: ECMAScript 6引入了易于填充的内容: 该方法用于将所有可枚举的自身属性的值从一个或多个源对象复制到目标对象。它将返回目标对象。 数组的自身属性不会被复制,因为它无法枚举。 另外,您可以使用ES6 传播语法来达到相同的结果: