亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

使用 foreach 進行 api 調用以循環數組

使用 foreach 進行 api 調用以循環數組

PHP
慕娘9325324 2023-09-22 15:29:41
我有下面的代碼,它獲取用戶的所有 cardId,我需要進行 api 調用來獲取每張卡的詳細信息。創建卡時會保存 cardId。獲取卡的端點是這樣的 - https://{baseUrl}/v3/virtual-cards/id我需要將用戶的 cardId 作為 傳遞id。在我的應用程序中,我使用戶可以創建多張卡,因此在創建卡時,我收集 cardId 并將其保存到我的數據庫中。我可以使用以下命令從數據庫中獲取所有的cardId$auth_user = Auth::user()->id;$card = Card::where('user_id', $auth_user)->pluck('card_id');現在我想循環數據庫中的所有 cardId,以使 api 調用獲取每個 cardId 的所有數據。我已經嘗試過了。 public function getCard(Request $request){        $auth_user = Auth::user()->id;        $card = Card::where('user_id', $auth_user)->pluck('card_id');         foreach ($card as $userCard) {        $response = Http::withToken('{SEC_KEY}')->get('https://{baseUrl}/v3/virtual-cards/$userCard', [          ]);          return $response->json();         }      }但foreach似乎不起作用。
查看完整描述

2 回答

?
jeck貓

TA貢獻1909條經驗 獲得超7個贊

注意實際上這個謎題是由 baikho 解決的,你應該接受他的回答,因為他是第一個,遺憾的是沒有提供任何樣本。


您不應該在第一次迭代中返回值,而是首先將它們收集在數組中并返回整個集合,而且變量的名稱也很混亂。


public function getCardResponses(Request $request): array

{

    $auth_user = Auth::user()->id;

    $cards = Card::where('user_id', $auth_user)->pluck('card_id');

    $responses = [];

    foreach ($cards as $card) {

        $response = Http::withToken('{SEC_KEY}')->get('https://{baseUrl}/v3/virtual-cards/$userCard', [

        ]);

        $responses[] = $response->json();

    }

    return $responses;

}


查看完整回答
反對 回復 2023-09-22
?
泛舟湖上清波郎朗

TA貢獻1818條經驗 獲得超3個贊

foreach()不起作用,因為您在第一次迭代中一次性返回一個值。這要么是預期的行為,要么您可能希望收集數組中的值并在循環之外返回該值。



查看完整回答
反對 回復 2023-09-22
  • 2 回答
  • 0 關注
  • 166 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號