当php通过webservice获取数组时,未定义的偏移量


Undefined Offset in php while getting array through webservice

在Ionic中构建App,在PHP中构建webservices。我的问题是我从应用程序中获得一个对象,而击中api。

[option] => stdClass Object
        (
            [228] => 19
            [229] => 22
            [230] => 24
            [231] => 26
        )

php中,我使用以下代码将该对象转换为数组。

$option = (array)$this->request->post['option'];

然后检查它的类型,它是一个数组。但是当我试图获得$option[228]的值时,它返回给我一个错误"未定义的偏移量:228"。问题可能是查找索引值228,而不是匹配关联键值。

我怎么能得到使用这些数字键的值??

另一种解决方案是,你可以准备数组,然后访问它的键->值对,如果你需要它的键,然后,像下面…

$option = array_combine(array_keys((array)$option), array_values((array)$option));

然后你可以访问$option[228]

可以使用array_values($option)来重置密钥。

[
  0 => 29
  1 => 22
  2 => 24
  3 => 26
]

或者像这样使用对象:

选项-> {228}