[英]How do I handle this?
讓我們看一些代碼來更好地解釋:我向WS請求,如下所示:
$idERP = 1;
$grupoEcota = new \SoapClient($url);
$paramExtrato = array(
'sGrupo' => $request->sGrupo,
'iCota' => $request->iCota,
'iIdERP' => $idERP,
);
$responseExtrato = $grupoEcota->ROS_ExtratoContaCorrente($paramExtrato);
$grupoEcota = $responseExtrato->ExtratoContaCorrente;
我從dd(die and dump)的WS女巫那里得到了一個響應:
$dados[] = $grupoEcota->{'PARCELAS-PAGAS'};
dd($dados);
array:1 [▼
0 => {#784 ▼
+"PARCELA-PAGA": array:21 [▼
0 => {#783 ▼
+"NUMERO-PARCELA": 48
+"DATA-VENCIMENTO": "20170818"
+"DATA-PAGAMENTO": "20170919"
+"VALOR-PARCELA": 580.28
+"HITORICO-PARCELA": ""
+"PERC-PAGO": 3.491
}
1 => {#771 ▶}
2 => {#781 ▶}
3 => {#780 ▶}
4 => {#779 ▶}
5 => {#778 ▶}
6 => {#777 ▶}
7 => {#776 ▶}
8 => {#775 ▶}
9 => {#774 ▶}
10 => {#773 ▶}
11 => {#772 ▶}
12 => {#757 ▶}
13 => {#770 ▶}
14 => {#769 ▶}
15 => {#768 ▶}
16 => {#767 ▶}
17 => {#766 ▶}
18 => {#765 ▶}
19 => {#764 ▶}
20 => {#763 ▶}
]
}
]
我只需要獲取第一個“ DATA-VENCIMENTO”:“ 20170818”項。 請問我該怎么做?
首先,您要處理數組,讓我們取出第一個元素(我的假設是只有一個元素)。
$data= $data[0];
現在我們有了一個鍵值數組,我們現在可以提取PARCELA-PAGA
。
$parcels = $data{'PARCELA-PAGA'];
數組中的多個對象是下一個級別,這意味着每個對象中都有數據,因此我將使用array_pluck將這些元素取出。
$vencimento = array_pluck($parcels, 'DATA-VENCIMENTO');
如果您不關心多個數據字段,則只需采用第一個元素。 請注意,此數據不是數組,而是對象。
$vencimento = $parcels[0]->DATA-VENCIMENTO;
結果應該是這樣。
[""20170919"", "20171019", ...]
得到了朋友的幫助:
$firstRecord = collect($dados[0]->{'PARCELA-PAGA'})->firstWhere('DATA-VENCIMENTO', '20170818');
dd($firstRecord);
然后...
{#783 ▼
+"NUMERO-PARCELA": 48
+"DATA-VENCIMENTO": "20170818"
+"DATA-PAGAMENTO": "20170919"
+"VALOR-PARCELA": 580.28
+"HITORICO-PARCELA": ""
+"PERC-PAGO": 3.491
}
我完成了:
dd($firstRecord->{'DATA-VENCIMENTO'});
我得到了“ 20170818”,這是我正在尋找的價值。 我認為這解決了問題! 謝謝,伙計,你是男人!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.