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

时间:2016-10-14 13:25:56

标签: php arrays web-services ionic-framework

在PHP中使用Ionic和webservices构建应用程序。我的问题是我在点击api时从应用程序中获取了一个对象。

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

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

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

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

如何使用这些数字键获取值?

2 个答案:

答案 0 :(得分:1)

替代解决方法是您可以准备阵列然后访问它的密钥 - >价值对,如果你需要它的键,那么,如下...

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

然后你可以访问它的元素,如$ option [228]

答案 1 :(得分:0)

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

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

或者像这样使用对象:

$选项 - > {228}