返回JSON的“试图获取非对象的属性'listaOrdenes'”错误

时间:2019-06-15 14:56:04

标签: php json laravel properties

从PHP中的函数返回JSON时,我遇到以下问题,当尝试读取JSON的某些属性时,以下错误返回给我。

  public function ObtenerListadoOrdenes(){
    try {
        $existeNueva = false;
        //OBTENEMOS LA LISTA DE ORDENES.
        $orderList = json_decode(CallApiRest::CallAPI('GET', $this->url.'/orders/get/list', false, $this->token));

        foreach($orderList as $item){
            $orderlist = OrderList::find($item->orderNumber);

            if ($orderlist == null){
                $existeNueva = true;

                $orderlist = new OrderList;

                $orderlist->orderNumber = $item->orderNumber;
                $orderlist->date = date('Y-m-d H:i:s', strtotime($item->date));

                $orderlist->save();
            }
        }

        $tempArray = array('existeNueva'=>$existeNueva, 'listaOrdenes'=>$orderList);

        return $tempArray;
    } catch (Exception $e) {
        echo 'Excepción capturada: ',  $e->getMessage(), "\n";
    }
}

下一个代码中返回错误。 返回$ listado-> listaOrdenes;

public function index()
    {
        $laudusApi = new LaudusApiConnect;
        $listado = $laudusApi->ObtenerListadoOrdenes();

        return $listado->listaOrdenes;
    }

错误是:试图获取非对象的属性'listaOrdenes'

1 个答案:

答案 0 :(得分:1)

$laudusApi->ObtenerListadoOrdenes();的结果是一个数组。在PHP中,数组应这样访问:$listado['listaOrdenes'];